Auerbach_Standard_EDP_Reports_196609_Volume_2_Autonetics CDC Auerbach Standard EDP Reports 196609 Volume 2 Autonetics
User Manual: Pdf Auerbach_Standard_EDP_Reports_196609_Volume_2_Autonetics-CDC
Open the PDF directly: View PDF .
Page Count: 1041
Download | |
Open PDF In Browser | View PDF |
AUERBACH STANDARD EDP REPORTS An Analytical Reference Service for the Electronic Data Processing Field Prepared and Edited by AUERBACH Corporation Philadelphia, Penna. 2 Published by . I AUERBACH INFO, INC. I AUERBACH Standard EDP Reports Prepared and Edited by AUERBACH Corporation Editor ............ '" .................................. John R. Hillegass Associate Editor ........................................Alan E. Taylor Assistant Editors ........................................ Fonnie H. Reagan, Jr. Myra C. Weisgold Consulting Editors ........................................ John A. Gosden Roger l. Sisson Norman Statland Production Manager ..................................... Cecil C. Hamilton Staff ................................................. Lenna W. Holt Susan J. Lehman Frances G. Maslin Robert O. MacBride George [\Jeborak Sally D. Nester .Director of Customer Relations ............................. R. G. Scott President ............................................. Isaac L. Auerbach Director of Information Products Group ................... Robert E. Wallace Publisher ............................................. Richard K. Ridall The information contained herein has been obtained from reliable sources and has been evaluated by technical teams with extensive working experience in computer design, selection and application. The informatioll, however, is not guaranteed. / AcknowledgemE!'nt is made of the inspiration and guidance provided by the Information Systems Branch of Office of Naval Research which has supported data gathering activity by Auerbach Corporation in fields similar to some covered in these reports. The data contained and formats used in STANDARD EPD REPORTS were not prepared under any contract with the U. S. Government; and they are the exclusi've property of the copyright holders. AUERBACH INFO, INC. 55 n. seventeenth street philadelphia, pa. 19103 215-locust 7-2930 7/64 COMPUTER SYSTEM REPORTS \ " / I ~ AUERBACH INFO, INC. PRINTED IN U. S. A. . .' COMPUTER SYSTEM REPORTS AUERBACH INFO, INC. PRINTED IN U. S. A. RECOMP II Autonetics Division North American Aviation, Inc. \ '''--- / ( \ AUERBACH INFO, INC. PRINTED IN u. s. A. RECOMP II Alitonetics Division North American Aviation, Inc. AUERBACH INFO, INC. PRINTED IN U. S. A. 1. 161:011.100 sm,,,, RECOMP II SUMMARY REPORT AEDP ; J, AUERBAC~ REPORTS SUMMARY REPORT: RECOMP II .1 AVAILABILITY RECOMP II is a small scientific computer system that was manufactured from 1958 to 1963 by the Autonetics Division of North American Aviation, Inc. Autonetics announced the discontinuance of manufacture of the RECOMP line of computers on April 24, 1963. A total of approximately 120 RECOMP II computers were manufactured. Autonetics states that a limited number of used RECOMP II systems are currently available for either lease or purchase. Prices for used RECOMP II's will be quoted upon request to prospective customers. Autonetics is continuing to provide maintenance and "limited software support" for installed RECOMP systems . •2 HARDWARE RECOMP II is a fully-transistorized desk-sIze computer designed primarily for low-volume scientific applications. Paper tape is the basic input-output medium, but a card reader/ punch, up to four slow magnetic tape units, and a digital plotter can be added if desired. Despite the close hardware similari1;y between the RECOMP II and the later RECOMP III (page 162:011. 100), there is no direct program compatibili1;y between the two systems. RECOMP II's 40-bit word size - unusually long for computers in this class - provides about 12 decimal digits of precision. Each word can contain two instructions or one fixedpoint operand. Floating-point numbers are represented by pairs of words. All internal storage is provided by a single magnetic disc. The disc contains 70 tracks served by fixed read and write heads. Six1;y-four tracks form the 4, 080-word Main Memory, two "recirculating" tracks form a 16-word Fast Memory, and the remaining four tracks are used for special registers. The disc revolves at about 3,500 rpm, so the average access time to Main Memory is about 8. 5 milliseconds. Each 8-word Fast Memory track has two read heads and one write head; maximum Fast Memory access times are 1.1 milliseconds for reading and 2.2 milliseconds for writing. A special instruction permits eight-word data transfers between Main Memory and Fast Memory. No pari1;y checking is performed upon transfers to or from the disc. The Central Processor operates in the binary mode on either fixed-point or floating-point operands. The instruction structure is one-address, but because the 20-bit instructions are accessed from the disc in pairs, a pseudo one-pIus-one addressing scheme (in which the second instruction of each pair is an unconditional transfer to the next instruction pair) can be used to increase execution speeds by minimizing disc rotational delays. The instruction repertoire is well-designed for most scientific computations. It includes a full complement of arithmetic operations - i.ncluding square root - in both fixed-point and floating-point modes. There are, however, no facilities for indexing or indirect addressing. Instructions in typical programs are executed at the rate of about 50 to 200 per second. Decimal-to-binary conversion for input data is automatic, but binary-to-decimal conversion for output operations requires a special subroutine which is rather slow. Some 40 basic subroutines have been provided to handle a varie1;y of four-, five-, and six-bit input-output codes, but the output operations are awkward. Simultaneous operations cannot be performed in RECOMP II systems; the Central Processor is interlocked during all input-output operations. The standard input-output devices are a 400-character-per-second paper tape reader, a 20-character-per-second paper tape punch, and a 10-character-per-second 1;ypewriter, all of which are supplied with the basic RECOMP II system. The basic tape reader and punch use 5-channel tape and the Baudot code, so no parity checking can be performed, although echo checking is used to verify the punching operation. The console typewriter is a modified IBM unit that can be used for both keyboard input and printed output. A convenient desk-top Console Unit provides a digital display of data in selected registers or storage locations. Other peripheral equipment that can be used with RECOMP II systems includes: a Facitape Console containing a 600-character-per-second paper tape reader and a 150-character-persecond paper tape punch; a Connector unit that permits an IBM 24 or 26 Card Punch to be used for low-speed card input and/or output; a digital X-Y plotter; and up to four low-speed magnetic tape units. Peak data transfer rate for the magnetic tape units is 1,850 characters per second, and Autonetics considers them to be more useful for auxiliary storage than for conventional input-output purposes. The Facitape paper tape units can accommodate tape © 1965 AUERBACH Corporation and AUERBACH info, inc. 11/65 161 :011. 200 .2 RECOMP II HARDWARE (C ontd.) with 5, 6, 7, or 8 channels; they provide higher speeds and more flexibility than the basic Autonetics paper tape units • .3 SOFTWARE A fairly wide range of software facilities is available, a large proportion of which has been prepared by individual RECOMP n users. An interpretive system, RAFT IV, provides a simple machine-oriented language for limited engineering applications; the structure of the language is quite similar to the type of instructions given to operators of desk calculators, so RAFT IV is well-suited for open-shop operations. SCOP AC is an algebraic compiler language that is closely related to FORTRAN, but SCOPAC lacks FORMAT and library facilities, holds all variables in floating-point form, and cannot handle arrays of more than . two dimensions. Several other compilers and assemblers have been developed for the RECOMP n, but they are less widely used than RAFT IV and SCOPAC. The RECOMP II program library contains routines for various engineering and mathematical applications using both fixed-point and floating-point arithmetic. Despite the various software programming systems available to RECOMP II users, machine-language programming is common because the computer j.s relatively straightforward and easy to program. Autonetics estimates that 80 percent of all user programs are written in machine language. RECOMP II's simplicity and ease of programming make it suitable for use as a training device to teach digital computer principles and programming. 11/65 fA AUERBACH s 161:221. 101 1& AUERBACH STANDARD ED:!? RECOMP II PRICE DATA REPORTS PRICE DATA: RECOMP II ''-- The rental and purchase prices shown below were those in effect for new RECOMP II equipment while it was in production. Autonetics states that current prices for used RECOMP II equipment will be quoted upon request to prospective customers. The monthly maintenance charges shown below are those currently in effect; they cover a preventative maintenance program plus all parts and labor necessary to maintain the equipment in good operating condition. As an alternate plan, Autonetics will supply maintenance service on a call-to-call basis for a fixed price per day, plus parts and transportation. IDENTITY OF UNIT CLASS CENTRAL PROCESSOR No. D4A-AB D4G-AB Name RECOMP II Standard System RECOMP II Magnetic Tape System PRICES Monthly Rental Monthly Maintenance Purchase $ $ $ 2,495 2,795 550 550 95,000 99,850 Either system includes 4,080word Main Memory, 16-word Fast Memory, Central Console and Display, Console Typewriter, 400-cps Paper Tape Reader, and 20-cps Paper Tape Punch. STORAGE INPUTOUTPUT Included in basic system, above. AFPC Facitape Console, including 600cps Paper Tape Reader and 150-cps Paper Tape Punch 500 100 16,950 D4K Connector for IBM 24 or 26 Card Punch (for card input/output) 150 30 4,250 M906II Magnetic Tape Unit 625 125 25,000 D4H X-Y Digital Plotter 220 45 5,450 Consolette (required for above I/O 50 per unit connected devices) 10 3,800 225 Versatape II (off-line 10-key paper tape preparation unit) 100 20 2,500 266 Computeriter 100 20 2,600 - I \ " © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 RECOMP III Autonetics Division North American Aviation, Inc. ( \ ( \ AUERBACH INFO, INC. PRINTED IN U. S. A. RECOMP" III Autonetics Division North American Aviation, ,/ AUERBACH INFO, INC. PRINTED IN U. S. A. Inc~ 162:011.100 ~ AUERBACH STANDARD EDP RECOMP III SUMMARY REPORT REPORTS SUMMARY REPORT: RECOMP III .1 AVAILABILITY RECOMP III is a small scientific computer system that was manufactured from 1961 to 1963 by the Autonetics Division of North American Aviation, Inc. Autonetics announced the discontinuance of manufacture of the RECOMP line of computers on April 24, 1963. A total of approximately 60 RECOMP III computers were manufactured. Autonetics states that a limited number of used RECOMP ill systems are currently available for either lease or purchase. Prices for used RECOMP ill's will be quoted upon request to prospective customers. Autonetics is continuing to provide maintenance and "limited software support" for installed RECOMP systems . •2 HARDWARE RECOMP m is a fully-transistorized desk..:size computer designed for low-volume scientific applications. The basic input-output device is a 10-character-per-second Flexowriter, although faster paper tape input-output equipment is available. Despite the fact that RECOMP m was designed as an "economy model" of the earlier RECOMP II (page 161:011.100), there is no direct program compatibility between the two RECOMP systems because of significant differences in their instruction repertoires and data formats. RECOMP Ill's 40-bit word size - unusually long for computers in this class - provides about 12 decimal digits of precision for fixed-point operands. Floating-point numbers are represented by an 8-bit exponent, a 31-bit fraction, and a sign bit. Each RECOMP m word can contain two 20-bit instructions or one fixed-point or floating-point operand (whereas RECOMP II uses two words to hold each floating-point operand). All internal storage is provided by a single magnetic disc. The disc contains 70 tracks served by fixed read and write heads. Sixty-four tracks form the 4, 080-word Main Memory, two "recirculating" tracks form a 16-word Fast Memory, and the remaining four tracks are used for special registers. The disc revolves at about 3, 500 rpm, so the average access time is about 8.5 milliseconds to Main Memory and 1. 1 milliseconds to Fast Memory. A special instruction permits eight-word data transfers between Main Memory and Fast Memory. No parity checking is performed upon transfers to or from the disc. The Central Processor operates upon fixed-point binary operands. Floating-point arithmetic is a hardware option; if the optional feature is not installed, its facilities can be simulated (at a considerable reduction in speed) by a standard software package. The instruction structure is one-address, but because the 20-bit instructions are accessed from the disc in pairs, a pseudo one-pIus-one addressing scheme (in which the second instruction of each pair is an unconditional transfer to the next instruction pair) can be used to increase speeds by minimizing disc rotational delays. The RECOMP II instruction repertoire is well-designed for most scientific computations, although it lacks some of RECOMP II's convenient but costly facilities such as built-in square root and decimal-to-binary conversion. One index register is available, but it can be referenced only by the second instruction of each instruction pair. Instructions in typical programs are executed at the rate of about 50 to 200 per second. All editing and radix conversion operands must be programmed, and standard subroutines are available to facilitate them. Any code of 5 to 8 bits can be used for input and output operations, but every data character is handled as though it contained eight data bits; characters are packed five to a 40-bit word. There are no facilities for simultaneous input-output operations, and only a limited amount of overlapping of Flexowriter and Central Processor operations is possible. The standard RECOMP m input-output device is a Friden Flexowriter, which is an electric typewriter with an integrated paper tape reader and punch. The Flexowriter provides key'board or paper tape input and printed or punched output, all at a rated speed of 10 characters per second. Paper tape with 5, 6, 7, or 8 channels can be used. The Flexowriter's low speed and uncertain reliability make the basic RECOMP m configuration suitable only for applications whose ratios of input-output to computational volume are very low. The standard Flexowriter can be augmented by faster Facitape paper tape input-output units. The Facitape reader has a rated speed of 600 characters per second and a maximum effective speed of 285 characters per second when used with a RECOMP III. The Facitape © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 RECOMP III 162:011. 200 .2 HARDWARE (Contd.) punch, rated at 150 characters per second, achieves a maximum speed of about 90 characters per second in RECOMP III systems. The Facitape reader can be used as an independent unit, or the reader and punch can be combined in a Facitape Console. Also available for use with RECOMP III systems are a digital X-Y plotter and a Connector unit that permits an IBM 24 or 26 Card Punch to be used for low-speed (20 columns per second maximum) card input and/or output• .3 SOFTWARE RECOMP ill is a relatively straightforward, easy-to-program computer. so many user programs are written in machine language. The RECOMP III program library contains an assortment of input-output control routines and mathematical functions to simplify machine-language programming. An interpretive system called RIP-3000 permits the RECOMP III to be programmed as if it were an even more convenient - but slower - pseudo-computer with built-in floating-point arithmetic, radix conversions, and mathematical functions. RIP-3000 provides a convenient coding language, but the instructions are executed interpretively at a rate of only about 12 instructions per second. Also available for the RECOMP III are a FORl'RAN II compiler and NUCOM, a numerical control compiler that generates control tapes for a variety of machine tools. 11/65 IA AUERBACH • -A 162:221. 101 SIIM'IID Au~1~E~p;' RECOMP III PRICE DATA - PRICE DATA: RECOMP III The rental and purchase prices shown below were those in effect for new RECOMP III equipment while it was in production. Autonetics states that current prices for used RECOMP III equipment will be quoted upon request to prospective customers. The monthly maintenance charges shown below are those currently in effect; they cover a preventative maintenance program plus all parts and labor necessary to maintain the equipment in good operating condition. As an alternate plan, Autonetics will supply maintenance service on a call-to-call basis for a fixed price per day, plus parts and transportation. IDENTITY. OF UNIT CLASS CENTRAL PROCESSOR No. Name RECOMP III Computer, including: 4, OSO-word Main Memory, 16-word Fast Memory, Console, and Flexowriter PRICES Monthly Rental Monthly Maintenance Purchase $ $ $ 1,495 Floating-Point Arithmetic (optional) 65,000 41. 66 STORAGE Included in basic system, above INPUTOUTPUT Facitape Paper Tape Reader 125 25.00 4,750 Facitape Console, including 600-cps Paper Tape Reader and 150-cps Paper Tape Punch 500 100.00 16,950 75 30.00 2,625 X- Y Digital Plotter 195 45.00 4,950 Flexowriter for remote operation (inquiry station) 260 50.00 5,650 One additional input plug (for optional or special devices; 3 max.) 25 5.00 750 One additional output plug (3 max.) 25 5.00 750 Connector for IBM 24 or 26 Card Punch (for card input/output) / 425.00 © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 I" \ '-. BURROUGHS B200 SERIES Burroughs Corporation '1(. ......... iI U c ( \. AUERBACH INFO, INC. PRINTED IN u.s. A. BURROUGHS B200 SERIES Burroughs Corporation AUERBACH INFO, INC. PRINTED IN U. S. A. 201 :001.001 Burroughs B 100/200/300 Series Contents CONTENTS Introduction • . . • . • . . • • • . . • . . . • . . . • . . . • . • . . . • . . • . . . . . Data Structure . • . • . • • . . . • . . • . . . . . . . . . . • . . . . . . . . . . . . . System Qonfiguration Table of Permissible Corifigurations ...••••.•• : .••. I Typical Card System • . . . • . . . • . . . . . • . . . . . . . . . . II 4-Tape Business System . • . . • . . . . . • • . . . • . • • . • . • III 6- Tape Business System . . . . . . . . . . . • . . . . . . . . . . . V 6-Tape Auxiliary Storage System . . . . . . . . . . . . . . • • . Special Configuration for Unit Records . . . • • • • . . • . • . Special Configuration for Proof-Transit Operations •. ' . . . Internal Storage Core Storage . . . . . . . • . . • • • . • • . . • • • • • . . • . . • • Disk File System . . . • . . . . . • . • • . . . • . . • . . . • • • . . Central Processors B 100/200 10-microsecond Central Processor . • . . . . . . B 200/300 6-microsecond Central Processor . . . . • • • . . Console Processor Console • . . • . . • . . . . . . . • . . • • • • • • • • . . Supervisory Printer.' . . • . . . . . . . • . . . . . . . . . . ' . . . . Input-Output: Plinched Card and Tape B 122 Card Reader (200 cards/min) . . . . . . . . . . . . . . . . . . . . . B 123 Card J;teader (475 cards/min) . . • • • . • • . . • . . . . . . . . . . B 124 Card Reader (800 cards/min) . . • . . • • . • . . . . . . . . . . . '. B 129 Card J;teader (1,400 curds/min) . • • • • . . . . . . . . . . . . . . B 303 Card Punch (100 cards/min) . • . . • . . . . . . . . . . . . . . . . . B 304 Card Punch (300 cards/min) . • . . . . . • . . . . . . . . . . . . . • B 141 Paper Tape Reader . . • . . . . . . . . . . . . . . . . . . . . . . . . . B- 341 Paper Tape PunCh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Input-Output: PrintersB 320 Line Printer (475 lines/min) . . . . . . • . . . • . . . . . . . . . . . B 321 Line Printer (700 lines/min) . . • . • . . . . . . . . . . . . . . . . . B 325 Line Printer (700 lines/min) . • • . . . . • . . . . . . . . . . . . . . B 328 Line Printer (1,040 lines/min) . . • . . . . . . . . . . . . . • . . . B 329 Line Printer (1,040 lines/min) . • • • • . • . . . . . . . . . • . . . Multiple Tape Listers . . . • . . . . • • . . . . • • . . . . . • . • • . Input-Output: Magnetic Tape B 421 Magnetic Tape Unit (18,000 or 50,000 char/sec) . • . . . . . • . B 422 Magnetic Tape Unit (24,000 or 66,000 char/sec) . . . . . • . . . B 423 Magnetic Tape Unit (24,000 char/sec) • • • . . • . . . . . . . . . . B 424 Magnetic Tape Unit (66,000 char/sec) . . • • • • . . . . . . • • . . B 425 Magnetic Tape Unit (18,000, 50,000, or 72,000 char/sec) .. Input-Output: OtherB 401 Record Processor . . . • . • • • • • • . • . . • . . . • . • • • • . . • . MICR Sorter-Readers • . . . • • . • . • • . . . • . • . • . . . • . • . . . . . . , Data Communications System . • • . . • . . . . . . . • • . • . • . . • • • . . B 248 Data Communications Control Unit . . . . . . . . . . . . . . . . . . B 450 Disk File and Data Communications Basic Control . • . . . . . B 481 Teletype Terminal Unit . • • . • . . . • . . . . . . . . . . . . . . . . B 483 Typewriter Terminal Unit . • • . . . • . . • . . . . . . . . . . . . . . B 484 Dial TWX Terminal • . . • • • . . • . . • . . • . . . . • . . . . . . . . B 486 Central Tei'minal . . . • . • . • • . • • . . • . • • . . . . . . . • • . . B 493 Typewriter Inquiry Station . • . . . . . . . . . . . . . . . . . . . . . Simultaneous Operations . • . . . . . . • . . . . . • . . . . . . . . . • • • • • • . . Instruction List . . . • . . • . . • . . . • . . . . . • . . . . . • . . . . . . . . . . . . Coding Forms Basic Assembly Language . . . . . • , . . . . . . . . . . . . • . • . . . . . • Advanced Assembly Language . • . . . . . . . . . . . . . . . • . . • . . • . © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 201:011 201:021 201:031. 011 201:031.1 201:031. 2 201:031. 3 201:031.4 201:031. 5 201:031. 6 201:041 201:042 201:051 201:052 201:061 201:061 201:071 201:072 201:072 201:072 201:073 201:073 201:074 201:075 201:081 201:081 201:081 201:082 201:082 201:083 201:091 201:091 201:091 201:091 201:091 201:101 201:102 201:103 201:103 201:103 201:103 201:103 201:103 201:103 201:103 201:111 201:121 201:131 201:131 6/65 201 :001.002 BURROUGHS B 100/200/300 SERIES Data Codes Internal, Printer, Lister, Sorter-Reader, Disk File •••...•.• Alphameric Card· .•••••..•••••••••••..•••••.•.••••• Magnetic Tape ••.•.••••••.•••••••.•••.•••••••••••• Record Processor .••••••••••••••.••••••••••••••••• Paper Tape •••••••••••••••••..••••••••••.••••.•• Collating Sequence. • • • • • • . • • • • . • • . • • • • • . • . • . • . • • • • • Problem Oriented Facilities •••.••••.•..•••.••••••••••••• Simulation by B 220 .•••••••••.•••...•.••••.••••.••. Sort Generator I • . • • • • • • • . • . . • . . . . • . . • . . . . . . . . . . . . Generalized Three-Tape Sort •.••••••..•....••.•.•..... Disk File Sort Generator III •••••.•....•....•..••••••.• Disk File Chained Records Sort . • • • • • . . . • • . . • • . . . . . • • . . Report Generator I, IA .•••••••••.•.••••..•••.•.•••.. Data Conversion Program .•.••••••.•••..••••••••••••• Disk File Utility Programs ••••...••••...•••.••••••••• Magnetic Tape CopyIV erify. • • • • • . • • • • • . • • • •• • • . • • • • • . Disk File Record Maintenance and Recovery. • . • • • • • • • • . . • • . Demand Deposit Accounting Programs •••••••••••••••••••• Proof/Transit Programs •••.•.•••••••••.•.•.•••.••••• Installment Loan Programs .••••••••••.•••••••••.••••.• Bond Analysis and Accounting • • • • • • • • • . • • • . • • • . • . . • • • • ·Loan Payment Schedular ••••••••••••.•••••••••••••••• Bank Customer Service Model •••••••••.••.•.••••.••••. On-Line Teller System ••••.•••••••.••••••.•..••.•••. Flow Chart Generator. • • . • • • • • • • • . . • • • • • • • . • . • • • • • • . Process Oriented Languages Compact COBOL •••••••••••••••••••••.••.••••••••. B 200/300 Full COBOL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Machine Oriented Languages Basic Assembly Language •••••.•••.••••••••••••••••.. Advanced Assembly Language ••••••••••••••.•.••.•...•. Program Translators Basic Assembler ••.••••.••••.••..••••••••••••••••• Advanced Assembler •••••••..•••.•••••••••••••••••. Compact COBOL Compiler .••.•..••••.•••••.••.••••••. SPS Translator .•••••••••••.•.•..•.•.••••••.••.••• Operating Environment . General •••••.•• '.' ••••••••••.••••.•..••••••••••• Multiprocessing ••••.•••...•••••••••••..•••••.••••• Tape/Disk Operating System .•••.•.•...••..•..••..••.• System Performance •••••.••••••••••••••.••.•.••••••••. Worksheet Data •••••.••••••••••..•••••••.••••••••• Generalized File Processing .•.••••.••••.••••••••••.•• Sorting •.••.••••••••••••••.••.••.••..••.••..•.• Physical Characteristics •••.•••••••.••••••.••••.•••••••• Price Data ••••••••.••••••••••......••••••••••••.••• 201:141 201:142 201:143 20:).:144 201:145 201:146 201:151 201:151.12· 201:151.13 201:151.13 201:151.13 201:151.13 201:151.14 201:151.15 201:151.15 201:151.16 201:151.16 201:151..17 201:151.17 201:151.17 201:151.17 201:151.17 201:151.17 201:151.17 201:151.17 201:161 201:162 201:171 201:172 201:181 201:182 201:183 201:184 201:191 201:192 201:193 201:201 201:201. 011 201:201.1 201:201. 2 201:211 201:221 / 6/65 201:011.100 Burroughs B 100/200/300 Series Introduction INTRODUCTION .1 SUMMARY The B 100/200/300 Series designates a group of three similar, small-to-medium-scale, business-oriented computer systems manufactured by Burroughs Corporation. The original entry in the Series was the B 200 line of computer systems, first delivered in October 1962. The B 200 Series provided 4,800 characters of core storage and a memory cycle time of 10 microseconds. Peripheral device flexibility was limited to punched card, line printer, MICR document, magnetic-striped ledger card, and magnetic tape input-output units. Buffered card reading, punching, and line printing were offered as standard features. Fourteen months later the B 200 Series was significantly improved: memory cycle time was reduced to 6 microseconds; the instruction repertoire was increased from 37 to 49; 4,800 additional charapters of core storage were offered; and paper tape, disk file, and data communications peripheral facilities were added. The upgraded systems were designated as "level threes", such as the B 263 and B 283 computer systems, and the original 10-microsecond systems were reduced in price and presented to the market as the economy B 100 Series. Previously-announced peripheral devices, such as the card reader, MICR sorter-reader, and line printer, were offered in new models with lower speeds and prices to meet the needs of the low-priced B 100 Series market. The next major announcement by Burroughs occurred in May 1964, when the B 370 System for banking applications was released. The B 370 System included a 16-pocket MICR Sorter-Reader and up to 3 high-speed multiple tape listers. The first stirrings of a revamped marketing policy were perceptible when the B 370 central processor was offered with modular control and instruction features; the power and flexibility of the central processor could be tailored in price and rerformance to individual customer requirements. In February 1965, more peripheral devices were announced - high-speed models such as a 1,400-card-per-minute reader and aI, 040-line-per-minute printer. Concurrently, further design improvements were incorporated into the B 200 "level three" central processor, and the B 300 Series was officially born. Emphasizing modularity, the B 300 Series was publicized to include under one title all possible system configurations, including the archetype B 370 system. The capability to add 9; 600 more characters of core storage, for a Series maximum of 19,200 characters, became possible, and several new and powerful instruction options were unveiled. ' The memory cycle time of 6 microseconds, however, was not further improved in the new processor. Thus, today's B 100/200/300 Series offers a wide range of peripheral devices that can be connected, with few restrictions, to two basic central processors with cycle times of 10 or 6 microseconds and with core storage capacities of 4,800, 9,600, or 19,200 characters. Monthly rental rates can vary from $2,500 for a B 100 Series card system to $20,000 for a B 300 Series system with extensive random access disk file and data communications capabilities. A wide variety of proven software is available to facilitate the programming of business applications. (The limited core storage and lack of floatingpoint arithmetic make the B 100/200/300 Series systems unsuitable for most scientific applications. ) In this Introduction, several significant topics are discussed, as listed below. The true scope of the B 100/200/300 Series can be best understood if each area of discussion is read. However, the topics that follow can be read separately if desired. ,1 Summary .2 Central Processor •3 Peripheral Units .4 Software .5 Compatibility with Competitive Equipment .6 Compatibility within the B 100/200/300 Series © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 BURROUGHS B 100/200/300 SERIES 201:011. 200 •2 CENTRAL PROCESSORS The B 100/200/300 Series offers two basic central processors, with memory cycle times of 10 and 6 microseconds. All B 100 central processors have the slower cycle time, and all B 300's have the faster time. The B 200 central processor can be ordered with either cycle time. B 100 Series core storage capacity is limited to 4,800 characters, but the capacity of the 6-microsecond B 200/300 processors can be increased to 9,600 or 19,200 characters. Each B 100/200/300 Series central processor is a character-oriented unit containing core storage facilities, an arithmetic and control unit, two input buffers, one output buffer, and an integrated console. Each instruction has a fixed length of 12 characters and is divided into an operation code, two variant characters, and three 3-character addresses. Operand lengths can vary from 1 to 12 characters and are specified in the individual instructions; no "word marks" are required in the data fields. Instructions in typical routines are executed at the rate of about 1,800 per second in the B 200/300 6-microsecond central processor. The instruction list includes a full complement of decimal arithmetic and comparison operations as well as automatic editmg facilities. Multiply and divide instructions are standard. There are no index registers and no indirect addressing facilities, but all B 200/300 central processors include an address modification instruction to increment individual operand addresses. Among the instructions recently added to the Series with the advent of the B 300 central processor are Transfer and Translate, Unit Interrogate, Transfer and Branch, Data Compress and Expand, and Binary Card Read and Punch. All B 100/200/300 Series input-output operations are buffered except those involving magnetic tape, the ledger-card processor, and the disk file. Instruction execution by the central processor is inhibited for the duration of the latter three types of operations, with the exception of magnetic tape rewinding. Card reading and punching, paper tape reading and punching, printing, MICR sorter-reader input, and data communications operations can proceed in parallel with each other and with internal processing. Computer system designations within the B 100 and B 200 Series are determined by the class of input-output controllers that must be added to the central processor in order to satisfy configuration requirements. For example, punched card configurations without magnetic tape or MICR facilities utilize B 160, B 260, or B 263 systems; MICR/magnetic tape operations demand B 170, B 270, or B 273 systems; and if magnetic tape is desired without MICR capabilities, then a B 180, B 280, or B 283 system is required. The MICR and ledger-card processing Visible Record Computer (VRC) is controlled by a B 250 or B 251 central processor. The B 300 central processor is a single model designed to function with any available peripheral unit, provided that the appropriate, separately-priced input-output control module is added either at the time of manufacture or in the field . .3 PERIPHERAL UNITS The principal peripheral units available with the B 100/200/300 Series are listed in Table I along with their chief characteristics. A complete list of peripheral devices, indicating model numbers and performance data, is provided in the Price Data section of this report, page 201:221.101. The configuration possibilities for the B 100 Series are limited to one card reader, one card punch, one MICR sorter-reader, one line printer or multiple tape lister, and up tofour magnetic tape units. The! B 250/251 central processors are the only ones capable of controlling the B 401 Ledger Processor. The B 200 Series 10-microsecond central processor permits the connection of two card readers or one card reader with one sorter-reader, one card punch, two line printers or multiple tape listers, and up to six magnetic tape units. TheB 200 Series 6-microsecond central processor offers the additional capability of controlling one 'paper tape reader and punch, up to 50 Disk File storage modules,and up to 15 data communications terminal units. The still more comprehensive B 300 Series central processor can control all these peripheral devices, plus an additional 6-tape multiple tape lister. Burroughs card readers offer speeds between 200 and 1,400 cards per minute. The line printers can operate at peak speeds ranging from 475 to 1,040 lines per minute. Top printing speed for the multiple tape listers is 1, 600 numeric lines per minute on each of up to three listing tapes. (Contd.) 6/65 201:011.300 INTRODUCTION TABLE I: PRINCIPAL B 100/200/300 SERIES PERIPHERAL UNITS Peripheral Type Model No. Punched Card Equipment B B B B B B 122 123 124 129 303 304 Name Card Card Card Card Card Reader Reader Reader Reader Punch .Characteristics Reads 200 cpm. Reads 475 cpm. Reads 800 cpm. Reads 1,400 cpm. Punches 100 cpm. Card Punch Punches 300 cpm; has Punched Paper Tape B 141 Equipment Paper Tape "Reader B 341 Paper Tape Punch Reads 5, 6, 7. or 8 level tape at 500 or 1. 000 ch~r/sec. Punches 5, "S, 7, or 8 level tape at 100 char/sec. B 320 Line Printer Line Printer Line Prinh.~r Multiple Tape Lister Multiple Tape Lister Prints Prints Prints Prints B 107 Sorter~Readcr Reads 1,200 documents/ B 116 Sorter-Reader min; sorts to 13 pockets. Reads 1,560 documentsl min: sorts to 16 pockets. Magnetic Tape Units B 421 B 422 Magnetic Tape Unit Magnetic Tape B 423 Magnetic Tape B 424 Magnetic Tape Unit Magnetic Tape Unit Transfers Data at66KC. B 450 Disk File Basic B 475 Disk File 8tor- Controls 9.6 to 4BO million characters. Stores 9.6 million characters: 20 msec average access time • Stacker Select option. Printers B 321 B 329 B 326 B 332 MICR Equipment Unit 475 lpm. 700 Ipm. 1,040 lpm. 1,200 numeric lpm. Prints 1,"600 nwncric Ipm. Transfers data at IB or 50KC. Transfers data at 24 or 66KC. Transfers Data at24KC. Unit B 425 Random Access Storage Control age Module .3 Transfers data at 18, 50. or 72KC. PERIPHERAL UNITS (Contd. ) The Burroughs magnetic tape units provide a range of transfer rates from 18,000 to 72,000 characters per second and packing densities of 200, 556, and 800 rows per inch. Data is recorded. on O. 5-inch, 7 -track magnetic tape, providing compatibility with the tape units used. in IBM 1400 and 7000 Series systems. All magnetic tape operations (except rewinding) require the use of the central processor throughout the entire operation, so there is no read/compute. write/compute, or read/write simultaneity. The Burroughs Disk File System is a modular storage system that combines high on-line storage capacity (up to 480 million characters) with rapid random access (20 milliseconds average). The rapid accessing is made possible by the use of a fixed read-write head serving each data track, which completely eliminates head-positioning delays and provides relatively high reliability. Peak data transfer rate is 100,000 characters per second. Prices· are competitive with those of other currently-available mass storage systems whose averltge access times are 5 to 10 times as high. An array of data communications devices can be attached to any B 200/300 Series central processor. Up to four such processors can share the same communications network, which can consist of up to fifteen terminal units of varying capacities. The B 481 Teletype Terminal Unit provides buffered interfacing for up to 399 remote teletype stations, the B 483 Typewriter Terminal Unit can control up to 8 typewriter inquiry stations, and the B 484 Terminal Unit regulates the use of up to 8 stations of the Dial TWX network. Burroughs has recently alUlOunced another terminal unit, the B 486 Central Terminal, to channel transmissions between. the central processor and up to 96 remote Teller Consoles in its On-Line Banking System. All of the terminal units are buffered. and can Simultaneously accept inquiries from as many remote devices as their individual buffer sizes will accommodate. Buffer sizes are specified at the time of manufacture. An operating system to control the operations of a data communications network has been announced, with delivery expected in June, 1965. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201:011;400 BURROUGHS B 100/200/300 SERIES .4 SOFTWARE A wide variety of proven software is available for the B 100/200/300 Series. Most of the existing software is designed to be used with 4,800 characters of central processor core storage. As a result of this severe storage limitation, the's.oftware is characteristically simple and straightforward, and makes extensive use of multiple passes and phases. The most important programs provided include a basic and an advanced symbolic assembler, a Compact COBOL compiler, tape and Disk File sorts, and report generators. A translator program is also provided to convert IBM 1401 SPS source-language programs into Burroughs symbolic assembly-language programs. Burroughs has announced a full COBOL compiler for B 200/300 Disk File systems, with delivery expected by July, 1965. A Tape/Disk Operating System is anticipated for delivery in June, 1965. Programs currently supplied by Burroughs include: • Compact COBOL Compiler: Provides that group of language facilities that comprise the Compact COBOL subset of COBOL-61; designed for use with 4 magnetic tape units and 4,800 characters of core storage. • Basic Assembler: A straightforward card or tape assembly program that provides one-for-one conversions from source code to machine language. There are no provisions for use of a program library, and only two macro instructions are permitted. The coding form makes use of coding-form page and line numbers for symbolic references. All elements of every instruction must be specified in every statement. • Advanced Assembler I: An improved assembly program designed for use' on B 200/300 Series magnetic tape systems. A system library can be utilized to call utility routines, diagnostics, error routines, and other subroutines that the user inserts him selL Seven macro instructions are provided, including tape and disk instructions that call forth and set linkages to their required error routines. Symbolic names and reusable program points can reference both data and instructions. Operand sizes, once described in the Data Division, need not be specified again in individual instructions. • Sort Generator I: Generates magnetic tape sort programs within five miIiutes. Sort programs can be generated that utilize from 3 to 6 tape units. The object sort program operates within 4,800 characters of core storage. • Generalized Three-Tape Sort: A multi-phase sort program modified according to the user's parameter cards; designed for use with 9,600 characters of core storage and three magnetic tape units. • Disk File Sort Generator III: Generates object sort programs that utilize a Disk File for intermediate storage. Tag sorting is possible, enabling most sorts to be completed significantly sooner than would be the case with record, sorting. Source and result files can be contained on either magnetic tape or Disk File. • Report Generator I: Generates specially-tailored programs that process input from punched cards, magnetic tape, or Disk File and produc'e, reports on either punched cards or line printer. • Utility Routines: A variety of programs designed to handle data transcription, diagnostic, and file-maintenance operations using minimal equipment configurations. " • Demand Deposit Accounting Programs: A series of standard financial programs designed for use with the Visible Record Computer (B 250 or B 251) exclusively. • Demand Deposit/Proof and Transit Finaricial Application Package: A series of programs written for banks that have '4 magnetic tape units and 4,800 characters of core storage. Complete documentation is included with the package. (Contd.) 6/65 201:011.401 INTRODUCTION .4 .5 SOFTWARE (Contd.) • Installment Loan Financial Apphcation Package: A group of programs that process MICR loan payments. All master file information is maintained on magnetic tape. Four tape units and 4,800 characters of core storage are required. • Bond Analysis and Accounting Package: A series of programs that provide bond portfolio management with detailed analyses and evaluations of current and proposed bonds. A B 200/300 Series central processor is required for use of this program, as well as a card reader and line printer. • On-Line Teller System: A thoroughly documented systems approach to online banking operations is provided; a complete operating system is not yet available. • Flow Chart Generator: A program that generates detailed logic charts from Basic or Advanced Assembly Language source programs. The programmers' remarks, as punched into the source card, are printed in the symbol generated for each source statement. Three magnetic tapes are required to use the generator, in addition to a B 200/300 6-microsecond central processor with 4, 800 positions of core storage . COMPATIBILITY WITH COMPETITIVE EQUIPMENT Certain hardware options available with the improved B 200 and B 300 central processors provide some degree of input-output compatibility with other commercially-oriented computer systems. Binary card reading and punching are available, as well as the reading and punching of Bull and ICT card codes. Magnetic tapes can be read and written using any 6-bit binary code. Direct compatibility is possible between the Burroughs tape units and the IBM 729 and 7330 tape units. The B 100/200/300 Series instruction code is not directly compatible with that of any other computer system. Burroughs has developed a program translator to convert IBM 1401 SPS source code into a source code acceptable to Burroughs assemblers., but the SPS Translator is too limited in scope to serve as a really productive tool in most conversion operations. Hardware dissimilarities that could not be circumvented within the 4,800 characters used by the SPS Translator program limit the candidates for effective translation to small and relatively basic IBM 1401 card and tape programs. Even so, some manual changes will usually be required before the translated program can be assembled and run . •6 COMPATIBILITY WITHIN THE B 100/200/300 SERIES The standard inclusion of many additional instructions in the B 200/300 6-microsecond central processor has made downward compatibility with the slower B 200 and B 100 Series systems almost impossible unless the use of these additional features is deliberately restricted. However, upward compatibility throughout the line is completely feasible. The great majority of the available peripheral devices can be used with any central processor in the Series, although in some cases a special inputoutput control module is a prerequisite. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201 :021.100 Burroughs B 100/200/300 Series Data Structure DATA STRUCTURE .1 .2 STORAGE LOCATIONS Name of location Size Purpose or use Character: Block: Input buffers: Output buffer: 6 bits + parity bit group of characters 80 characters (sorterreader, 84 char) 80 characters Print buffer: Lister buffer: 120 characters * 44 characters alphamerics. magnetic tape record. store input for cards, paper tape, or sorter-reader. store output for cards or paper tape. store output for printer. store output for lister. DATA FORMATS Type of information Representation Letter:. . . . . . . .. . . . . . . . . . . . . . .... . Numeral: . . . . . .. . . . . . . . . . . . . . . . . . . . Special symbol: . .. . . . . . . . . . . . . . . . . . . . Operand: . . . • . . . • • . . . . . • . . . • . . . . . . • . . 1 character. Instruction: . . . . Block on tape: .. Arithmetic operand: . . . . . . . . . . . . Data for mask: .... . . . . . . . . . . . Edit mask: . . . . . . . . . . . . . . . . . . . . . Ledger stripe: . . . . . . . . . . . . . . . . . . . . Line of print for Record Processor: . . . . . . . . . One MICR document: . . . . . . . . . . . . . . . . . . . Internal block for transfer: . . . . . . . . . . . . . . . * 132 characters for "6/65 , !~, t '. , • ~ B 325 and B 329 printers. •! 1 character. 1 character. 1 to 12 characters, as specified in instruction. 12 char-acters. any number of characters greater than 6. 1 to 12 characters. 1 to 12 characters. 1 to 24 characters. 1 to 80 characters. 160 characters. 84 characters in core storage. 1 to 132 characters. 201 :031.00; Burroughs B 100/200/300 Series System Configuration SYSTEM CONFIGURATION The following table shows the number of peripheral devices of each available type that can be connected to each of the central processor models in the B 100/200/300 Series. The next six pages show the components and prices of Burroughs systems in representative standard configurations, arranged in accordance with the specifications on page 4:030.120 of the Users' Guide. TABLE OF PERMISSIBLE CONFIGURATIONS CENTRAL PROCESSOR MODEL PERIPHERAL UNITS B 160 B 170 1 1 1 1 1 ,1 0 0 0 0 0 0 0 0 0 B 303 Card Punch B 304 Card Punch B 341 Paper Tape Punch B B B B 122 123 124 129 Card Card Card Card Reader Reader Reader Reader VRC B 260 B 270 B 280 B 263 Sorter-Reader Sorter-Reader Sorter-Reader Sorter-Reader Sorter-Reader 116 Sorter-Reader 102 103 104 106 107 B 273 B283 B 300 0 1 1 1 0 2 2 2 0 2 2 2 0 2 2 2 0 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 0 0 0 0 0 0 2* 2* 2* 2* It It It 1 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1* 1* 1* 1* i* 1* 1 1 1 1 1 1 1* 1* 1* 1* 1* 1* 1* 1* 1* 1* 1* 1* 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1* 1* 1* 1* 2 2 0 2 0 2 2 0 2 0 2 2 0 2 0 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 It It It - B 141 Paper Tape Reader B B B B B B B 180 Note: Any combination of one sorter-reader and up to two paper tape and punched card readers, to a maximum of two units, can be connected to the two input buffers provided. 1 Note: Either the B 303, B 304, or B 341 punch unit c an be attached to the one output buffer provided. B B B B B 320 321 325 328 329 Line Printer Line Printer Line Printer Line Printer Line Printer Multiple Tape Lister Multiple Tape Lister Multiple Tape Lister Master Multiple Tape Lister B 333 Slave Multiple Tape Lister B B B B 322 323 326 332 It 1 1 It It 0 0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 1 It 0 1 0 0 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 2 1 Note: Printers and Listers, which contain their own buffers. cannot operate on-line in combination with each other. t Adapter required for use with B 100 Series. * Appropriate input-output control module required. (Table continued overleaf) © 1965 AUERBACH Corporation and AUERBACH Info, Inc, 6/65 201 :031.002 BURROUGHS B 100/200/300 SERIES TABLE OF PERMISSmLE CONFIGURATIONS (Contd.) CENTRAL PROCESSOR MODEL PERIPHERAL UNITS B 160 B B B B B 421 422 423 424 425 Magnetic Magnetic Magnetic Magnetic Magnetic Tape Tape Tape Tape Tape Unit Unit Unit Unit Unit B 170 B 180 VRC B260 B 270- B 280 B 263 B 273 B283 B 300 0 0 0 0 0 0 0 4 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 6 0 6 0 0 6 0 6 0 0 6* 6* 6* 6* 0 6 6 6 6 0 6 6 6 6 0 6* 6* 6* 6* 6* B 401 Ledger Processor and Printer 0 0 0 1 0 0 0 0 0 0 0 B 495 Supervisory Printer 0 0 0 0 0 0 0 1* 1* 1* 1* 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 2 1 1 2 1 1 2 1 1 2 Note: B 421 Tape Units cannot be used in combination with B 422 or B 423 tape units. All other combinations are permissible. B 450 Basic Disk File/Data Communication Control II 247 Disk File Control B 451 Disk File Expanded Control B 471 Disk File Electronics Unit B 475 Disk File Storage Module 0 0 0 0 0 0 0 10 10 10 10 0 0 0 0 0 0 0 50 50 50 50 B 248 Data Communication Control B 481 Teletype Terminal B 483 Typewriter Terminal B 484 Dial TWX Terminal B 486 Central Terminal 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 15 15 15 0 4 15 15 15 4 15 15 15 0 o· 4 15 15 15 15 0 0 0 Note: All 4 terminal units contain their own inputoutput buffers; up to 15 terminal units in any combination can be attached to a B 248 Data Communication Control. Central Processor Ol2tional Features Sense Switches Card Reader Early Release Printer-Lister Selector Switch Card Reader Busy Branch 132-Print Position Capability 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 6 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 1 1 0 0 1 0 i# 1 i# 1 i# 1 1# 0 i# t Adapter required for use with B 100 Series. Appropriate input-output control module required. # Standard feature. * (Contd.) 6/65 201:031;100 SYSTEM CONFIGURATION .1 TYPICAL CARD SYSTEM; CONFIGURATION I Deviations from Standard Configurations: . . . . . . . . . . . . . no index registers. card reader is 20% slower. card punch is 33% faster. Equipment Rental Core Storage: 9,600 char. $ B 263 Central Processor and Console Card Reader: 800 cards/min. 1,600 400 Card Punch: 300 cards/min. 650 Line Printer: 1040 lines/min. 1,325 TOTAL RENTAL: Note: 550 $4,525 A typical card system that uses slower peripheral devices (200-cpm reader, 100-cpm punch, and 475-lpm printer) and the B 100 Series 10-microsecond central processor (with only 4,800 positions of core storage) rents for $2,510 per month. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 BURROUGHS B 100/200/300 SERIES 201:031.200 .2 4-TAPE BUSINESS SYSTEM; CONFIGURATION II Deviations from standard Configuration: .•••••..••.•• magnetic tape is 60% faster. Equipment Rental Core Storage: 9,600 char. $ B 283 Central Processor and Console (tape and disk file capabilities are included) 550 1,785 Card Reader: 475 cards/min. 320 Card Punch: 100 cards/min. 450 Line Printer: 475 lines/min. 810 Magnetic Tape Units (4): 24,000 char/sec. TOTAL RENTAL: Note: $5,895 If this same configuration is used with a B 10D Series 10-microsecond central processor (providing only 4, 800 positions of core storage), the monthly rental is $4,590. (Contd.) 6/65 201 :031.300 SYSTEM CONFIGURATION .3 6-TAPE BUSINESS SYSTEM; CONFIGURATION III \ '" Deviations from Standard Configuration: . . . . no index registers. console typewriter input is included. magnetic tape is up to 67% faster. Equipment Rental Core Storage: 19,200 char. $ B 283 Central Processor and Console (tape and disc file capabilities are included) 1,785 Card Reader: 475 cards/min. 320 Card Punch: 100 cards/min. 450 Line Printer: 475 lines/min. 810 Magnetic Tape Units (6): 18,000 or 50,000 char/sec. Supervisory Printer TOTAL RENTAL: Note: 875 4,200 400 $8,840 A similar configuration connected to the B 300 Series Central Processor and using high-speed peripheral devices rents for $10,070 per month. This price includes a 1400-cpm card reader, 300-cpm card punch, 1040-lpm line printer, and six 72 KC magnetic tape units with a recording density of 800 bpi. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201:031.400 .4 BURROUGHS B 100/200/300 SERIES 6-TAPE AUXILIARY STORAGE SYSTEM; CONFIGURATION V Deviations from Standard Configuration: . . . . . . . • . . . . . magnetic tape is up to 67% faster. no index registers. console typewriter input is included. Equipment Rental Disk FUe Storage Unit: 9,600,000 char . $1,700 . Disk File Storage Module: 9,600,000 char. 990 Disk File Control Unit and Adapter 730 Core Storage: 19,200 char. 875 B 283 Central Processor and . Console (tape and disc file capabUities are included) 1,785 Card Reader: 475 cards/min. 320 Card Punch: 100 cards/min. 450 Line Printer: 475 lines/min. 810 Magnetic Tape Units (6): 18,000 or 50,000 char/sec. Supervisory Printer TOTAL RENTAL: 4,200 400 $12,260 (Contd.) 6/65 SYSTEM CONFIGURATION .5 201 :031.500 SPECIAL CONFIGURATION FOR UNIT RECORD HANDLING Core Storage: 4,800 char. VRC Central Processor and Console Card Reader: 200 cards/min. Record Processor B 102 MICR Sorter-Reader: 1,565 items/min. TOTAL RENTAL: © 1965 AUERBACH Corporation and AUERBACH Info, Inc. $4,400 per month (special VRC System package). 6/65 BURROUGHS B 100/200/300 SERIES 201 :031.600 .6 SPECIAL CONFIGURATION FOR PROOF-TRANSIT OPERATIONS Equipment Rental Core Storage: 4,800 char. (included in price of Processor) B 270 10-microsecond Central Processor and Console (tape and MICR capabilities included). Card Reader: 200 cards/min. 220 Card Punch: 100 cards/min. 450 Multiple Tape Lister: 1, 565 lines/min. 1,600 Magnetic Tape Units (6): 18,000 or 50,000 char/sec. 4,200 B.103 MICR Sorter-Reader without endorser: 1, 565 items/min. 2,000 TOTAL RENTAL: 6/65 $ 1,650 $10,l20. 201 :041.1 00 Burroughs B 1001200/300 Series Internal Storage Core Storage INTERNAL STORAGE: CORE STORAGE .1 GENERAL . 11 Identity: . . . . Magnetic Core Storage . Part of B 100/200/300 Series Central Processors. .12 Basic Use: . . . . . .. .13 Description '" Availability: immediate for B 100, VRC, 260, 270, 280. 6 months for B 263, 273, 283. 6 to 8 months for B 300. .15 First Delivery: .16 Reserved Storage: September 1961 for B 200 Series. January 1963 for 9,600 characters of storage. April 1964 for B 100 Series. May 1965 for B 300 and 19, 200 characters of storage. none. .2 PHYSICAL FORM . 21 Storage Medium: magnetic core . . 23 Storage Phenomenon: direction of magnetization . .24 Recording Permanence working storage. Magnetic core storage for the B 100/200/300 Series is available in storage capacities of 4, 800, 9, 600, and 19, 200 alphameric characters. Each character position is individually addressable and consists of seven bits, six for data and one for odd parity. Every system in the series can ftinction with the basic 4,800 positions of core storage, but the addition of successive modules of 4,800 and 9,600 characters is possible only in the B 263, B 273, B 283, and B 300 Systems. Memory cycle time is either ten microseconds (B 100, VRC, B 260, B 270, B 280) or six microseconds (B 263, B 273, B 283, B 300), providing potential transfer rates of 100,000 or 166,000 characters per second, respectively. ," .14 Storage positions are referenced by three-character addresses. The most significant character designates one of 40 sections within a 4, 800-character block of storage, the mid-order character of the address specifies one of ten fields within the section, and the least significant character indicates the character position (1-12) within the data field. Zone bits over the ten's position of the address reference one of the four possible 4, 800-character logical blocks. .241 Data erasable by program: • . . • . .. yes. .242 Data regenerated constantly: . . . . .• no. . 243 Data volatile: ..•.. no . .244 Data permanent: .•. no. . 245 Storage changeable: . -no . _28 Access Technique: .. .29 Potential Transfer Rates coincident current. .292 Peak Data Rates Unit of data: _ . . . . character. Cycle rate: see Table I. Conversion factor: • 7 bits per character. Data rate: . . . . . . . see Table I. TABLE I: B 100/200/300 SERIES CORE STORAGE CHARACTERISTICS Processor Model Potential cycle and data rate, char/sec Available capacities, characters' Uniform access and cycle time, microseconds Effective transfer rate, char/sec B 100, VRC, B 260, B 270, B 280 100,000 4,800 B 263, B 273, B 283, B 300 166,000 4,800,9,600 19,200 10 48,000 6 80,000 © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201:041.300 BURROUGHS B 100/200/300 SERIES .3 DATA CAPACITY . 31 Module and System Sizes .6 Minimum Storage Characters: Instructions: Modules: .32 Maximum Storage 4,800 400 1 Rules for Combining Modules: .•..•• 19,200 1,600 3 see Table I for available capacities. .4 CONTROLLER: . .5 ACCESS TIMING .53 Access Time Parameters and Variations 6/65 see Table I. none . .7 STORAGE PERFORMANCE .72. Transfer Load Size:. 1 to 132 characters. .73 Effective Transfer Rate: • . . . . . • • •. see Table I. .8 ERROR, CHECKS AND ACTION Check or Interlock no separate controller. .531 For data unit of 1 character: ..••.. CHANGEABLE STORAGE: . -. . . .. Invalid address: Receipt of data: Dispatch of data: Invalid character: Recovery of data: none. none. send parity bit. all valid. parity check Recording of data: record parity bit. Action stop computer; alarm. 201:042.100 Burroughs B 100/200/300 Series Internal Storage Disk File System INTERNAL STORAGE: DISK FILE SYSTEM .1 GENERAL .11 Identity: .. . 12 Basic Use: .. . 13 Description age capacity per system, therefore, is 480 million alphameric characters. Multiple processors and/ or more than five B 475 storage modules are controlled by the B 451 Disk File Expanded Control Unit. Table I shows the potential Disk File System sizes with the corresponding configuration demands. . B 450 Disk File and Data Communication Basic Control. B 247 Disk File Control Unit. B 451 Disk File Expanded Control Unit. B 471 Disk File Electronics Unit. B 475 Disk File Storage Module. The following is a breakdown of the storage capacities of the Disk System components: . . auxiliary storage. The Burroughs Disk File System is a largecapacity random access storage facility available forusewith the B 263, B 273, B 283, andB 300 systems. The Disk File features a fast average ac"': cess time of 20 milliseconds, high-density recording, high reliability through elimination of movable access arms, and capabilities for shared usage by multiple processors. The B 450 Disk File and Data Communications Basic Control serves as an interface between up to two processors and the Disk File System (a maximum of four processors can access the same mass storage). Each B 471 Disk File Electronics Unit can have 1 to 5 four-disk modules, each containing 9.6 million* character locations. From 1 to 10 Electronics Units can be connected to the B 247 Disk File Control Unit. The maximum stor- Segment - can be 96, 240, or 480 characters in size, as specified during manufacture. • Data track - can store 24,000 alphameric characters (250, 100, or 50 segments, depending on segment size) . • Disc face - has 50 data tracks (2 faces per disc). • Module - has 4 vertically-mounted diSCS, on one horizontal shaft. • Electronics Unit - can contain 1 to 5 modules. • Control Unit - can control 1 to 10 Electronics Units. • Disc System - can have one control unit per processor. Each physical track has a fixed read-write head. Since.positioning time is eliminated, access time is a function of the rotation time. The time for the rotation of a disc record is 40 milliseconds, so access to each record will take from 0 to 40 milliseconds, or an average of 20 milliseconds. One case where the average access time is greater than 20 milliseconds is updating a record. This takes two references (to read the original record and then rewrite the updated version), but the *Module capacity can be increased to 14.4 million packed decimal digits through use of the B 300 optional Data Compress instruction (see Instruction List, Section 201:121). i • TABLE I: CONFIGURATION REQUIREMENTS FOR DISK FILE SYSTEMS \ \ B 475 Disk File Storage Modules (9.6 million char/u:odule) Number of Processors 1 Processor 2 Processors 3 Processors 4 Processors lA, 2B, lC, lD 2A, 3B, lC, lD 2A, 4B, lC, lD 1 to 5 Modules lA, lB, lD 6 to 25 Modules lA, lB, lC, 2-5D lA, 2B, lC, 2-5D 2A, 3B, lC, 2-5D 2A, 4B, lC, 2-5D 26 to 50 Modules lA, lB, 2C, 6-l0D lA, 2B, 2C, 6-l0D 2A, 3B, 2C, 6-l0D 2A, 4B, 2C, 6-l0D Key to TABLE I: ( "---- A B C D - B B B B 450 247 451 471 Disk Disk Disk Disk File File File File and Data Communications Basic Control. Control Unit. Expanded Control Unit. Electronics Unit. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 BURROUGHS B 100/200/300 SERIES 201:042.130 .13 • Description (Contd.) second reference is not a random reference and will often cost almost a full revolution (40 milliseconds). Thus, the average reference time for file maintenance applications will be about 30 milliseconds. Average data transfer rate is 100,000 characters per second. Data transfers are executed as eightcharacter words which are assembled in the controller. Up to 10 segments can be transferred by one instruction (a maximum of 4,800 characters). The method of addressing the Disk File Control Unit is by a 7-character address. One character designates the storage unit and six characters designate the segment address. Segment addresses are assigned starting at some point on the initial disc surface of the first module and continuing in direct sequential order. There is a positive check on the address itself. No timing synchronization between different modules is pOSSible; this prevents attempts to optimize programming by minimizing disc latency. The heads are embedded in a soft material so that the disc will not be damaged if contact is made with the disc. . 15 First Delivery: . third quarter of 1964. .16 Reserved Storage: none (but write lockout) switches are provided for each individual disc). .2 PHYSICAL FORM .21 Storage Medium: .22 Physical Dimensions .222 Disc 26.5 inches. Diameter: Thickness or length: 0.125 inch. 4 (shaft is horizontal). Number on shaft: . 23 Storage Phenomenon: . direction of magnetization. .24 Recording Permanence A "multiple character check" is produced in the control circuitry and recorded with each 48-bit data word. These codes are always checked automatically upon reading data from the disc; they can also be examined by a programmed read-back operation after recording. The checking procedure does not compare the original data with the recorded data but merely regenerates and examines the check code associated with the recorded data. .241 Data erasable by instructions: .242 Data regenerated constantly: . 243 Data volatile: . .244 Data permanent: .245 Storage changeable: Burroughs Corporation does not appear to rely heavily on this programmed read-after-write check, pointing out the reliability of head-per-track switching. They also point out the cost in time of such checking (it can reduce effective speeds by twothirds), and instead recommend a simultaneous tape write-out of the data. Words: .' .. Characters: Digits: Instructions: Segments: . . Disk File programming is facilitated by a compact and comprehensive set of three basic instructions: Read, Record, and Interrogate. The Interrogate instruction checks the conditions of controller readiness, data transfer error, and Disk File address validity. When multiple processors access the same Electronics Unit, one processor is serviced while the others wait. Consecutive references to the same record are possible and must be regulated according to individual installation requirements. A number of physical precautions are taken to safeguard the information on the discs. .25 · 26 • The head design is such that if the heads approach the disc too closely, a fail-safe technique moves the heads away and switches the unit off. Each individual disc has its own manual lockout circuits which can prevent it from being written upon, while allowing reference to be made to its contents. yes. no. no. no. no. Data Volume 2er Band of 1 Track variable. 24,000. 24,000. 2,000. 50, 100, or 250. Bands 2er Physical Unit: . . . . . . . . 50 per disc surface. .27 Interleaving Levels: 1. .28 Access Techniques .281 Recording method: . every track on each disc surface has an individual fixed head. .283 Type of accessDescription of stage: wait for selected segment for reading or recording. Possible start ing stage: . . . . . . uniform. · 29 • multiple magnetic discs. Potential Transfer Rates · 291 Peak bit ratesCycling rates: Bit rate per track: · 292 Peak data rates Unit of data: '" Conversion factor: Gain factor: . Data rate: . . . . . 1,500 rpm. 700,000 bits/sec/track. character. 7 bits per character. 1 track/band. 100,000 char/sec. (Contd.) 6/65 201:042.300 INTERNAL STORAGE: DISK FILE SYSTEM .3 DATA CAPACITY .31 Module and System Sizes (See Table Below.) .32 Rules for Combining Modules: . . . . . . CONTROLLER .41 Identity: .42 Connection to System .53 Simultaneous Operations: only one disc file operation at a time is permitted. Access Time Parameters and Variations .532 Variation in access time- 4, one per processor. none. .6 Connection to Device .431 Devices per controller: .432 Restrictions: . . . Variation Positioning: Latency (rotational delay): Total: B 247 Disk File Control Unit. .421 On-line: .422 Off-line: · 44 . 52 Stage .4 .43 1 to 10 Disk File Electronics Units may be connected to the control unit; one 4-disc module is included in each Electron ics Unit; up to 4 additional modules can be connected to an Electronics Unit. . 512 Stack Movement:. . . none. .513 Stacks that can access any particular location: 1. .514 Accessible locations: 24, POO chars. (50, 100, or By single stack: 250 segments). By all stacks: 9,600,000 per module. 0 '0. o to 40msec. o to 40msec. 20 msec. 20 msec. CHANGEABLE STORAGE: . none . .7 AUXILIARY STORAGE PERFORMANCE . 72 Transfer Load Size 1 to 10 Electronics Units. refer to Table 1. With core storage: 1 to 10 segments; number of segments is selected by program. Data Transfer Control . 73 · 441 Size of load: . . . . . 1 to 10 segments (each can be 96, 240, or 480 characters in size). · 442 Input-output area: core storage. .443 Input-output area , acc,ess: each character. · 444 Input-output area lockout: . . . . . none. . 445 Synchronization: . . programmed . .446 Synchronizing aids: test busy; branch on not ready. . 447 Table control: . . . none. .448 Testable conditions: Busy Controller, Recording Lock, Recovery Error, Transfer Error. ·5 ACCESS TIMING · 51 Arrangement of Heads · 511 Number of stacks: . . one read-write head per track. .31 Effective Transfer Rate With core storage: .8 Average 62,000 char/sec. ERRORS, CHECKS AND ACTION Error Check or Interlock Invalid address: Receipt of data: check parity check on addresses error indicator set, operation terminated indicator set, operation terminated, no data transferred . Recording of data: optional programmed readback Recovery of .error check data: code Dispatch of parity bit indata: cluded. Not ready check Timing interrogate conflicts: command Reference to check locked area: set indicator. set indicator. branch. branch on busy, error, or write interlock. indicator set, operation terminated. Module and System Sizes Minimum Storage Maximum Storage B 475 Disk File Storage Module Identity: B 471 Disk B 450 Disk File Electronics File SubUnit System. Disks: Characters: Instructions: 0 4 20 200 0 0 9,600,000 800,000 48,000,000 4,000,000 480,000,000. 40,000,000. Modules: 0 1 5 (max.) 50 (max.) © 1965 AUERBACH Corporation. and AUERBACH Info, Inc. 6/65 201 :051.1 00 Burroughs B 1001200/300 Series Central Processor 10.Microsecond Cycle Time CENTRAL PROCESSOR: B 1001200 (lO.MICROSECOND CYCLE TIME) .1 GENERAL .11 Identity: .12 Description The B 100 Series Processor, economy version of the original B 200 Line, restricts the control of input-output devices to one card reader (minus a busy-test option), one printer (700 lines per minute maximum), and six B 423 Magnetic Tape Units (24,000 characters per second data transfer rate). Standard card punches and MICR sorter-readers can also be connected according to the configuration rules on page 201:031. 001. .•.....•• Central Processor (identified by system): B 260, B 270, B 280, VRC, B 160, B170, and B 180. The B 200 Series Central Processor, first produced by Burroughs in 1961, still forms the basis of the entire B 100/200/300 Series of computer systems. It functions in its original form in the VRC, the entire B 100 Series, and the B 260, B 270, and B 280 systems. The improved and enlarged version, currently available in the B263, B 273, B 283, and B 300 systems, is treated on page 201:052.100. The Basic B 200 Series Processor is a threeaddress, character-oriented processor containing core storage facilities, an arithmetic and control unit, input-output buffer areas, and an integrated console. The arithmetic and logical capabilities of the various B 200 Series Processors are essentially the same; they differ, however, in the configurations of peripheral equipment and optional features that can be attached, as shown in the System Configuration chart (page 201:031. 001). The B 100 Processor is offered with somewhat less peripheral flexibility than the B 200, but at a substantially reduced price (see the Price Data section, page 201:221.101). Core storage capacity in the original line of B 200 Processors is fixed at 4, 800 alphameric characters. Each character position is individually addressable. The core storage cycle time is 10 microseconds both for instructions and data. Instructions have a fixed length of 12 characters each, whereas data fields can be of variable length. Due largely to the three-address command structure, the instruction repertoire contains good decimal arithmetic, comparison, and editing capabilities. The lengths of the operands can vary from 1 to 12 characters and are specified in the instructions themselves. An address modification instruction, available in all systems except the B 100 Series and the VRC, can increment one 3character address. Index registers and indirect addressing, however, are not provided in any of the B 100/200/300 Series processors. Another shortcoming, with regard to real-time operations, is the lack of automatic interrupt facilities. However, the capability to test all peripherals for busy status is optional with the B 300 Processor; see Paragraph 201:052.12. © .13 Availability: . • . . . . . immediate. . 14 First Delivery: .••.. July, 1962 . .2 PROCESSING FACILITIES .21 Operations and Operands Provision Radix Size automatic decimal 1 to 12 digits. none. automatic decimal 1 to 12 digits. Divide No remainder: none. Remainder: automatic decimal 1 to 12 digits. Oj2eration and Variation .211 Fixed point Add-subtract: Multiply Short: Long: .212 Floating point: ...•. none. . 213 Boolean: . . . . . . . . . . none. . 214 ComparisonProvision Size Numbers: automatic (sign ignored) 1 to 12 digits. Absolute: automatic Letters: automatic Mixed: automatic Zone: automatic 1 to 12 digits. 1 to 12 char. 1 to 12 char. 1 to 12 char. Collating sequence: specials, A tol,specials, J to R, specials, StoZ, Ot09. .215 Code translation: . . . . none. .216 Radix conversion: ... none. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 BURROUGHS B 100/200/300 SERIES 201:051.217 • 217 Edit format Provision Alter size: Suppress zero: Round off: Insert point: Insert commas: Insert dollar: Insert spaces: Insert special char.: , Size none. automatic use b char none. automatic. automatic. automatic. none only replace leading zeros !tUtomatic Replace by special char: Comment automatic 1 char in LSD of mask inserted if sign of field is negative 12 char field max. > 24 char mask max. leading zeros replaced by any desired char placed in mask (except • 234 Basic address structure: ••••.••..•. 3 + O• • 235 Literals: ••.•••..• none. .236 Directly addressed operands: •••.•..• 1 to 12 characters; from anywhere in core storage. .237 Address indexing: .•• none. .238 Indirect addressing: •• none. .239 Stepping: •.•••••.. none. .24 Special Processor Storage: ••••••••• 2 80-character input buffer areas. 1 80-character output buffer area. .3 SEQUENCE CONTROL FEATURES .31 Instruction Sequencing: sequential. • 32 Look-Ahead: ••.•••• none • • 33 Interruption: .•••.•• none • . 34 Multiprogramming: •• none • • 35 Multi-sequencing: .•• none • .4 PROCESSOR SPEEDS .41 Instruction Times in Microseconds $ .• ) Float dollar: Protection: none. automatic 1 of the replacement possibilities. ~ Notes: 1. Special character insertion ends at decimal point. 2. Character in mask between point. and LSD may be used for addressable storage. .218 Tilble lookup: •••••. none. • 22 Special Cases of Operands • 221 Negative numbers: ••• absolute value with sign in zone bits. .222 Zero: ••• , ••..••.• positive except in some multiply or divide results; treated as equal in branch tests . • 223 Operand size determination: •••.. counter, set by instructions. • 23 .231 Instruction structure: . 12 characters. • 232 Instruction layout: 0 Size (char): 1 M N AAA BBB 1 1 3 3 CCC 3 .233 Instruction parts Name .418 Shift: .• , •••.••••• none. .42 Instruction Formats Part: .411 Fixed point Add-subtract: .•••• 40 + 130 D, where D is operand length in digits. Multiply: .••••••• 30 + 60D + 210D2. Divide: . . . . . . . . • • 600D2 - 110D - 470. .413 Additional allowance for re-complementing: •••.••...•.• 10D .414 ControlCompare: •••••••• 40 + 100C, where C is operand length in characterB. Branch (on sign): ••• 70 • .416 Edit: .•••••••.••• 120 + 120M + 80N; where M = operand length and N = number of inserts ($), (.), (,). .417 Convert: ••••••••• none. Purpose 0: . • • • . • . . • . . . operation code. M, N: .•••••..• field length, variations, or device control. AAA, BBB, CCC: . operand address or jump location. Processor Performance in Microseconds .421 For random addresses c = a + b: .••.•••• b = a + b: .••••••• Sum N items: ..••• c = ab: .••••••••• c = alb: .•••••••• .422 For arrays of data ci = ai + bj=. , .••..• bj = ai -: bj: •.•••... Sum N Items: ..• , •• c = c + aib j : " ••••• ,423 Branch based on comparison Numeric data: ••.• Alphabetic data: ..• 40 + 130D . 40 + 130D. (40 + 130D) N. 70 + 190D + 210D2. 600D2 + 20D - 470. 750 + 260D. 620 + 260D. (490 + 260D)N. 650 + 320D + 210D2. 720 + 200C. 720 + 200C. (Contd.) 6/65 CENTRAL PROCESSOR: B 100/200 (lO-MICROSECOND CYCLE TIME) .424 SwitchingUnchecked: .•.•••• 410. Checked: .•••.••• 760. List search: .•••.• 450 + lOON. .425 Format control, per character Unpack: .••••••• 31. Compose: .•••••. 65. .426 Table look-up, per comparison For a match: .•... 240 + 100C. For least or greatest: . . . . . . 520 + 100C. For interpolation point: . . . . . . . . . 240 + 100C. .427 Bit indicators -Set bit in separate location: . . . . . . . . 120. Test bit in separate location: . . . . . . . . 140. Test AND for B bits: 170B. Test OR for B bits: . 30 + 134B • • 428 Moving: . . • . . . . . . . 40 + 80C for VRC system. 100 + 20C for B 260, B 270, and B 280 systems. © .5 201:051.424 ERRORS, CHECKS, AND ACTION Error Check or Interlock Overflow: Zero divisor: none. check Invalid data: Invalid operation: Arithmetic error: Invalid address: Receipt of data: check none. none. none. parity check none. Dispatch of data: Divisor and dividend same length: check Improper significant digits in dividing: check Processing of data: 1965 AUERBACH Corporation and AUERBACH Info, Inc. parity check Action quotient set to zero. haIt, alarm. haIt, alarm. haIt. alarm quotient set to zero. halt. alarm. 6/65 201 :052.1 00 Burroughs B 100/200/300 Series Central Processor 6-Microsecond Cycle Time CENTRAL PROCESSOR: B 200/300 (6-MICROSECOND CYCLE TIME) .1 GENERAL .11 Identity: .12 • Data Compress: Packs three numeric digits into the space normally occupied by two alphameric characters. The Data Expand instruction (included in this Command Module) performs the converse function. Through the use of the Data Compress command, the storage capacity of both magnetic tape reels and Disk Files can be increased by up to 50%, assuming all-numeric data. •. Binary Card Read: Reads the contents of a punched card and stores in memory the 160character binary card image. This instruction permits reading any card code (including pure column binary), with the necessary translation being performed by the stored program. • Binary Card Punch: Punches binary card images from core storage. (Neither Binary Read nor Binary Punch are buffered operations.) . . . . . . . . . Central Processor (identified by system): B 263, B 273, . B 283, and B 300. Description The B 200/300 Central Processor offers higher internal speed and more core storage than the original B 200 Processor described on page 201:051.100. The upgraded model, featuring a core storage cycle time of six microseconds, is used in the B 263, B 273, B 283, and B 300 Series systems. Core storage capacity can be increased from the series base of 4,800 3J.phameric characters to either 9,600 or 19,200 characters. The internal design and functional capabilities of the B 100/200 Central Processor are repeated in the more comprehensive B 200/300 Series Processor. Provisions have been added to control a random access Disk File System, data communications network paper tape reader and punch, supervisory printer, high-speed card reader (1,400 cpm), and high-speed magnetic tape units (66 KC). Features optionally available for this line of processors . include a combination Transfer and Branch instruction, selective stacking with the B 304 Card Punch, 132-print-position control with the B 325 and B 329 Line Printers, and a Card Reader Early Release device. The latter option frees the Processor immediately after the 80th card column is read into the buffer area. Incr-easing the level of B 200 Central Processor design one step further, Burroughs has developed the B 300 Processor. This is a single processor model designed to serve the entire B 300 Series. The unique concept introduced in the B 300 Processor is the use of optional Input-Output Control Modules for each peripheral unit connected (card reader, punch, and line printer are the only exceptions). In effect, every B 300 Central Processor will be custom-designed according to individual installation requirements. Similarly, optional Processor Command Modules can be added whenever certain instructions are desired. The Command Modules, available for the B 300 Processor exclusively, can control the following instructions: • • Transfer and Translate: Permits translation of any 6-bit code to any other code of up to 12 bits. This is accomplished through the use of translation tables, which utilize from 92 to 184 characters of core storage. Unit Interrogate: Tests the status of all peripheral devices and initiates further program control upon detection of not-readiness, busy status, or error condition. The line printers are regarded as not busy when spacing or skipping; hence, the processor must wait for paper motion to cease. • B300 Lister Command: Controls the B 322 and B 333 Multiple Tape Listers; provides the ability to select up to 18 listing tapes and to print simultaneously on any 3 selected tapes. Page 201:082.100 describes the operation of the various Burroughs Multiple Tape Listers . • Six externally-controlled Sense Switches are also available with the B 300 Central Processor. The Sense Switches can be tested by means of the Unit Interrogate Command. Two improved peripheral devices can operate only with the B 300 Central·Processor: the B 332/333 Multiple Tape Lister (1,565 lines per minute), and the B 425 Magnetic Tape Unit. The B 425 provides data transfer rates of 18,000, 50,000 or 72,000 characters per second. All B 300 optional features, including memory modules, Input-Output Control Modules, and Processor Command Modules, can be installed in the field. As a result, the expansion of B 300 Series systems can be accomplished easily as installation demands increase. .14 First Delivery: . 13 Availability: . • . . . . . 6 to 8 months for B 300 • • 0 January 1964 for B 263, 273, 283. May 1965 for B 300. PROCESSING FACILITIES Operations and Operands Operation Provision and Variation .211 Fixed point Add- subtract: automatic .2 .21 Radix Size decimal 1 to 12 digits. none. automatic decimal Divide No remainder: none. Remainder: automatic 1 to 12 digits. decimal 1 to 12 digits. Multiply Short: Long: (Contd.) 6/65 CENTRAL PROCESSOR: B 200/300 (6.MICROSECOND CYCLE TIME) .212 Floating point: .• '•... none. . 213 Boolean: .•...•.•.. none. .214 ComparisonProvision Numbers: automatic (sign ignored) . Absolute: automatic Letters: automatic Mixed: automatic Zone: automatic Bit: Collating sequence: automatic Size 1 to 12 digits. 1 to 12 digits. 1 to 12 char. 1 to 12 char. 1 to 12 char. 1 bit. specials, A to I, specials, J to R, specials, S to Z. 0 to 9. .215 Code translation (B 300 only) Provision: .••.... automatic (using optional command and code table constructed by programmer) • From: . . . . . . . . • . any 6-bit code. To: . • . • . . . . . . • . any code from 6 to 12 bits. Size: . . . • . . • . . . . 1 to 120 characters. .216 Radix conversion: .•. none . . 217 Edit format Provision Alter size: Suppress zero: Round off: Insert point: Insert commas: Insert dollar: Insert spaces: Insert special char: none. automatic none. automatic. automatic., automatic. automatic Note: 1. Special character insertion ends at decimal point . 2. Character is mask between point and LSD may be used for addressable storage. • 218 Table lookup: . . . . . . none . .22 . 23 Float dollar: Protection: Part: 0 1\1: N Size (char): 1 1 1 . 233 Instruction parts Name .234 automatic none. automatic Instruction Formats .231 Instruction structure: • 12 characters. .232 Instruction layout: • 235 .236 automatic Special Cases of Operands .221 Negative numbers: ... absolute value with sign in zone bits. .222 Zero: . . . . . . . . . . . . positive except in some multiply or divide results; treated as equal in branch tests. .223 Operand size determination: . . . . . counter, set by instructions. . 237 . 238 . 239 Replaced by special char. 201:052.212 AAA BBB 3 3 CCC 3 PUrpose 0: . • . . . . • • • • . . operation code. M, N: " •••.•.. field length, variations, or device control. AAA, BBB, CCC: . operand address or jump location. Basic address structure: . . . . • . . . . . . 3 + O. Literals: . . . . . • . . . none • Directly addressed operands: . . . . . . . . 1 to 12 characters; from anywhere in core storage. Address indexing: " . none . Indirect addressing: .. none . Stepping: . • • . . . . . . none . .24 Special Processor Storage: .•••....• 2 80-character input buffer areas. 1 80-character output buffer area . .3 SEQUENCE CONTROL FEATURES .31 Instruction Sequencing: sequential. .32 Look-Ahead: ....•.• none. .33 Interruption: .••.•.. none . . 34 Multiprogramming: .. none . . 35 Multi-sequencing: ... none . .4 PROCESSOR SPEEDS .41 Instruction Times in Microseconds .411 Fixed point Add-subtract: ...•. 24 + 78D. Multiply: . . . . . . • . 18 + 36D + 126D2. Divide: ..•..•.•. 360D2_ 66D-262. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201:052.413 .413 Additional allowance for re-compl!'Jmenting: ....•...••.• 6D. .414 Control Compare: .••••••• 24 + 60C. Branch (on sign): .•• 42. .416 Edit: .••••••••••• 72 + 72M + 48N; M = operand length and N = number of inserts ($), (.), (,). • 417 Convert: .••••••.•. none . • 418 Shift: •..•.••••••• none . .42 Processor Performance in Microseconds .421 For random addresses c = a + b: .••••••. 24 + 78D. b = a + b: .•••.••• 24 + 78D. Sum N items: ••••• (24 + 78D)N. c = ab: •••••••.•. 42 + 114D + 126D2. c = alb: .••.••••• 360D2 + 12D-258. .422 For arrays of data ci = ai + b j : . • . • . . . 450 + 156D. b. = a. + b.: .....•• 372 + 156D. S~m Niteths: .•••• 372 + 156D. 2 c = c + aib j : •••••• 390 + 192D + 126D . .423 Branch based on comparison Numeric data: ..•• 432 + 120C. Alphabetic data: .•. 432 + 120C. .424 Switching Unchecked: •.••.•. 246. Checked: •••••••• 456. List search: .••••• 270 + 60N. .425 Format control, per character Unpack: •••••••• 19. Compose: ••••••. 39. 6/65 BURROUGHS B 100/200/300 SERIES .426 Table look-up, per comparison For a match: ..••• 144 + 60C. For least or greatest: ••.•.. 312 + 60C. For interpolation point: ••••.•.. 144 + 60C. .427 Bit indicators Set bit in separate location:. . • • • • . • 72. Test bit in separate location: •••••.•. 84. Test AND for B bits: .••••••.•. 102B. Test OR for B bits: . 18 + 84B • • 428 Moving: .••••••..• 60 + 12C. .5 ERRORS, CHECKS, AND ACTION Error Check or Interlock Overflow: Zero divisor: none. check Invalid data: Invalid operation: Arithmetic error: Invalid address: Receipt of data: check none. none. none. parity check none. Dispatch of data: Divisor and dividend same length: check Inproper significant digits in dividing: check Processing of data: parity check Action quotient set to zero. halt, alarm. halt, alarm. halt, alarm. quotient set to zero. halt, alarm. 201 :061.1 00 Burroughs B 100/200/300 Series Console CONSOLE .1 GENERAL .11 Identity: . . . . Console Panel: a sub-unit of Processor. Processor Console is built into end of Central Proc.essor cabinet and consists of sloping panel and horizontal work space. .12 Associated Units: .•. B 495 Supervisory Prmter· (described below). .13 Description The Console contains the control and visible indicators used in the operation and maintenance of the computer. It includes facilities for display of device operation, display and manual entry of binary-coded data, and single-instruction operation. The B 495 Supervisory Printer, with an output rate of 10 characters per second, can be used with the B 200/300 6-microsecond Central Processors only. It is unbuffered and uses the Burroughs Common Language (BCL) character set. Appropriate commands have been added for progl'ammed control of the Supervisory Printer, which uses a modified electric typewriter as an inputoutput device. Print format is 10 characters per inch horizontally, and six lines per inch vertically. The Printer accepts continuous fanfold paper 8. 5 inches in width (9.875 inches including sprocket hole tracks). No provision is made for automatic indexing to a specific location on a pre-printed form. Two carbons can be printed. Left and right hand margins cannot be pre-set by the operator. The left hand margin is set at one inch. Maximum length for a printed line is 72 characters. Carriage return is caused by: • pressing carriage return key, • printing of the 72nd character, • a left pointing arrow (_) in the output data (in memory as 01 1111), or • pressing the end-of-input key during input. •2 CONTROLS .21 Power • 22 Connections:....... none . .23 Stops and Restarts . 24 Power on: Power off: Emergency off: Form Comment Halt: indicating switch Continue: indicating switch system halts after all operations in progress have been completed. starts system after halt, or stop with error conditions removed. Stepping Form Comment Single Instruction: switch instruction stored at displayed address is executed. Name Form Comment Clear: switch Bit Reset: switch clears all indicators and registers. allows clearing of any selected bits which are displayed. Name Form Comment Load: switch causes reading and sequential storage of deck of cards (may be used with paper tape in B 200/300 Series 6-microsecond central processors) • .25 .26 .27 Form Name Loading Program Branching Name Form Comment Sense Switches toggle switches (6) Testable by program to control branching (optional with B 300 Series). Comment indicating switch switch pull switch. © controls power } to Processor and all system components. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 BURROUGHS B 100/200/300 SERIES 201 :061. 300 .3 DISPLAY .31 Alarms .34 Form Disk File/Data Communications: static lamp Tape: static lamp Name Form Comment Comment Memory Display: binary coded indicating push-buttons display 1 character. error. or Disk File control busy or not ready. System halts. Memory Address: binary coded indicating push-buttons switch display address of displayed character. char in Memory Address location displayed in Memory Display. static lamp error or not ready in printer. System halts. Punch: static lamp error or not ready in punch. System halts. static lamp error or not ready in reader. System halts. Reader 2/ Sorter: * static lamp error or not ready in reader / sorter. System halts. Central Processor: static lamp parity error in Central Processor. System halts. * Increase Address and Read Memory: switch .4 ENTRY OF DATA .41 Into Control Registers Name Instruction address: . 42 Conditions: .33 Control Registers Instruction: Instruction address: Memory Address increased by one and char at that location displayed in Memory Display. Form Comment binary coded indicating push-buttons depress display buttons to set up address. Form Comment binary coded indicating push-buttons depress display push-buttons to set up character. switch Memory Display char stored in Memory Address location. Into Storage Name Memory Display: These alarms are labeled Card 1 and 2 on VRC Console. .32 6/65 Read Memory: error or not ready in magnetic tape. System halts. Printer: Reader 1:* Storage Write Memory: ••••••. none. .5 CONVENIENCES Comment . 51 Communication: . . . . . no facilities . binary coded indicating push-buttons display of instruction to be executed. .52 Clock: . . . . • .• .53 Desk Space: binary coded indicating push-buttons display starting location of instruction to be executed. .54 .•. optional. ... approximately 10 by 28 inches, situated below console panel, at a height of approximately 40 inches from floor. View: . • . . • . . . . . . standing; height of Central Processor is 55 inches. 201 :071.1 00 Burroughs B 1001200/300 Series Input-Output B 122 Cord Reoder INPUT-OUTPUT: B 122 CARD READER .1 GENERAL . 11 Identity: ••••••.•. B 122 Card Reader. .12 Description The B 122 Card Reader reads SO-column punched cards of standard or post-card thickness at a maximum rate of 200 cards per minute. Reading is performed by 13 photoelectric cells (one for timing), serially by column and parallel by bit. The time required to read each card, normally 300 milliseconds, is increased by 15 milliseconds when the reader is used intermittently rather than at its peak rate. The B 122 Card Reader automatically translates Hollerith code into Burroughs Common Language (BCL) code before transferring the information to the buffer area of the central processor. The B 100/200/300 Series Central Processor contains two SO-character input buffers which can accommodate one or two B 122 Card Readers per system. A Read instruction transfers the contents of the buffer, containing the data read from the previous card, to core storage within 3. 2 milliseconds; then the next card is read, refilling the buffer. The buffer-refilling operation proceeds independently of the central processor. Buffered card reading permits the peak speed of 200 cards per minute to be maintained if processing time per card does not exceed 296. S milliseconds. Cards are fed by a pinch roller device on demand from the central processor. The input hopper has a capacity of 500 cards and can be refilled while cards are being read. The single stacker provided also holds 500 cards, but it cannot be emptied while the unit is in operation. When the B 122 Card Reader is connected to a B 200/300 Series Central Processor, its status can be tested by the Read instruction. If the reader is not available, program control is transferred, enabling the processor to perform alternative functions before attempting another Read operation. The validity of each character being read is checked before it is sent to the buffer, provided that the Validity On indicator-switch is set. Reader operational failure causes a system interlock and displays a Read Check indicator. Failure to feed a card or a feeder jam (maximum of two cards involved) also causes an interlock and illuminates a Feed Check indicator. After all cards in the hopper have been read, the central processor will halt on the next Card Read instruction. If the operator then depresses the End of File button on the Reader, a program branch will occur. Unlike the Burroughs card readers, described on page 201:072.100, there are no optional features available for the B 122 Card Reader. First delivery of the B 122 occurred late in 1961. It is currently available immediately. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201 :072.100 Burroughs B 100/200/300 Series Input.Output B 123/124/129 Card Readers INPUT.OUTPUT: B 123/124/129 CARD READERS GENERAL .1 . 11 Identity: .12 B 123 Card Reader . B 124 Card Reader. B 129 Card Reader. Description The Burroughs B 123, B 124, and B 129 Card Readers provide punched card reading speeds of 475, 800, and 1400 cards per minute, respectively. Except for this considerable difference in rated speeds, the three readers are essentially the same. The only significant restriction upon connecting any one or two of these readers to any central processor in the B 100/200/300 Series is that the B 129 Card Reader can be used with the B 200/300 sixmicrosecond Central Processor only. If a Burroughs MICR Sorter-Reader is part of the system, . utilizing one of the two input buffers of the central processor, then only one card reader can be connected. The B 122 200-card-per-minute Card Reader described in the preceding report section can be paired with a B 123, B 124, or B 129 model. The B 123, B 124, and B 129 Card Readers can read standard or post-card thickness punched cards of 51, 60, 66, or 80 columns. The standard types of scored cards are acceptable when the stubs are removed. An immediate-access clutch provides demand feeding of the cards. Photoelectric reading by column initiates the automatic transfer of data from the card to a cod.e translator, en route to the central processor's buffer. (The Binary Card Read option enables cards to.be read without any code translation.) A Read instruction transfers the contents of the buffer, containing the data read from the previous card, to core storage within 3.2 milliseconds; then the next card is read, refilling the buffer. During the buffer refilling operation, the processor is free for computation; but without the Early Release optional processor modification described below, the processor must wait for the full card cycle to be completed before performing any magnetic tape, data communication, or Disk File operations. Comparative timings for the B 123, B 124, and B 129 Card Readers are shown in the table below. Times in Milliseconds Read cycle time, per card: Buffer Wlloading time: Processor delay before tape, Disk File, and data commWlications operations: Processor delay before above operations using Card Read Early Release option: 6/65 Card Reader Model B 123 B 124 B 129 475 cpm 800 cpm 1400 cpm 126 3.2 75 3.2 42.8 3.2 122.8 71.8 39.6 55.8 55<8 39.3 Contributing to an increased compatibility with equipment and input media in the field are several optional card reader features. The options listed below are applicable to the B 123, B 124, and B 129 Card Readers only: . • Bull Code Compatibility: A special version of the Card Reader can read and translate 80-column cards punched with a modified Bull T-8 code. • ICT Code Compatibility: Another speciallymanufactured version of the card reader provides for both ICT code and Bull code compatibility, but not during the same run. With a manual switch, the operator can select the mode of operation desired. • Post Money Order Modification: Allows the reading of 51-column punched cards using round holes that occupy the space of two standard-size rectangular holes. • Binary Card Read Command: A B 300 Central Processor option that allows the reading of any card code. The 12-bit binary image of each card column code is stored directly in core storage, in two con'secutive characterpositions. Binary card reading is an unbuffered operation. • Card Read Early Release: Allows the release of the central processor immediately following the reading of the 80th card column. The resultant time savings for magnetic tape, Disk File, and data communication operations are indicated in the table at left. • Card Read Busy Test: Provides the ability to test the card reader's status. If the reader is busy, program control is transferred to another alternative routine. This feature is not applicable if the card reader is connected to a B 100 Series Central Processor. Cards are fed by a belt-drive mechanism past the stack of 13 photoelectric read cells (one for timing) and transported to the single stacker. Both the hopper and the stacker have capacities of 2,400 cards and can be filled and emptied while the card reader is in operation. Should a jam occur in the card transport device, the unit will halt with a maximum of two cards jammed. The validity of each character being read is checked before it is sent to the buffer, provided that the Validity On indicator-switch is set. Card reader operational failure causes a system interlock and displays a Read Check indicator. Failure to feed a card after two attempts (the second try is automatic) will cause a system interlock and illuminate a Feed Check indicator. The availability of the B 123, B 124, and B 129 Card Readers is from three to four months. First deliveries of the prototype B 124 Card Readers occurred during the last quarter of 1963. 201 :073.100 Burroughs B 100/200/300 Series Input-Output Card Punches INPUT-OUTPUT: CARD PUNCHES .1 GENERAL .11 Identity: .12 . . B 303 Card Punch. B 304 Card Punch. Description The B 303 and B 304 Card Punches operate at maximum rates of 100 and 300 cards per minute, respectively; either can function with any central processor in the B 100/200/300 Series. Standard or postcard thickness SO-column cards can be punched (but not both thicknesses during the same run). Pre-scribed and/or pre-punched cards can also be punched if the post-punch checking device is inactivated by the operator. Formatting of the punched card is controlled exclusively by the stored program. Cards are punched by a single row of SO punch dies, one row at a time. When a card punch instruction is initiated, data in core storage is loaded into the central processor's SO-character output buffer. A row of information is then transferred to the pUnch unit's self-contained SO-bit row buffer and punched. During the time required to punch each row, the central processor is free for processing. Throughout the punching cycle the output buffer in the central processor is interlocked against any other potentially destructive accesses. A checking operation is performed at the punch station to insure that SO data bits are received for each,Tow and that 12 rows are punched in each card. In addition,· a post-punch sensing station compares the card just punched to the image in the buffer to insure accuracy. Detection of a punching error causes a central processor halt When the next punch instruction is initated. Processor halts also occur upon detection of abnormal conditions such as empty hopper, full stacker, card jam, or improper card registration . Translation from Burrough's internal code to Hollerith punched card code is automatically performed within the punch unit itself. By adding a Bull Code and/or ICT Code compatibility module to a B 200/300 6-microsecond central processor, the standard punch units are rendered capable of punching these special card codes as well as the standard card code. Another option, available only with the B 300 Series central processor, is the capability to punch cards in the binary mode. A binary card image of the contents of 160 core memory positions is punched, with the contents of single character positions stored in the upper and lower six positions of every card column. Binary card punching is an unbuffered operation. From hopper to stacker, cards are transported by positive-action pinch rollers. Hopper and stacker capacities of the B 303 Card Punch are SOO cards each. The B 304 Card Punch is equipped with three stackers: primary, auxiliary, and error. The primary stacker can hold 3,000 cards, the same capacity as the unit's hopper. Error cards are segregated in the error stacker, holding 750 cards. The S50-card auxiliary stacker is normally used as an alternative to the primary stacker, controlled by a switch on the control panel, but selective auxiliary stacking under control of the program can be obtained as an option with B 200/300 Central Processors. Significant timing considerations and a comparison of the B 303 and B 304 Card Punches are provided in Table 1. TABLE I: B303/B304 CARD PUNCH TIMING FACTORS B 303 B 304 Rated speed 100 cpm 300 cpm Total card cycle time in synchronous mode, msec Model \ '. 600 200 Overhead in asynchronous mode, msec 50 200 Total buffer load time per card, msec 14.74 14.74 Processing time available to maintain synchronous operation, msec 585.26 185.26 Maximum punching rate if available processing tim e is exceeded (cards/min. ) 92.3 Central Processor delay if magnetic tape, Disk file, or data communication operations follow a punch instruction, msec 539.26 150 154.46 © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201 :074.100 Burroughs B 100/200/300, Seri~,s Input-Output"" B 141 Paper Tape Reader< INPUT-OUTPUT: B 141 PAPER TAPE READER .1 GENERAL • 11 Identity: .12 Description . • . . . . . . . B 141 Paper Tape Reader . This unit reads data from punched paper tape into core storage at a speed of 500 or 1,000 characters per second. Either one or two B 141 Paper Tape Readers can be used with all B 200/300 Series six-microsecond central processors. The unit makes use of the same input buffers as the card readers. The B 141 can accommodate 5, 6, 7, or 8 level tape, as selected by the operator. Standard tape code ,is the BCL paper tape code (see Data Code Tabte,No. 5). Function Forward: switch Rewind: switch Strip-Reel: switch Control Code: 3 sets of switches High-Low: switch Parity On-Off: switch Teletype On-Off: switch Load Reader: switch Ready: switch Backspace: switch Unit Selected: switch (and light) Parity check: light No Tape: automatic switch Two optiona:l features are available: an Input Code Transiator and a Reader Selector Switch. The translator allows automatic translation of any code (5, 6, 7, or 8 level) to one of the 64 Burroughs Common Language (BCL) characters used by the central processor. The manual selector switch permits selection of the paper tape, reader or card reader. ' Reading speed is 500 or 1,000 characters per second. Fanfold tape, whether in strips or in reels, and metalized Mylar tape must be read at 500 characters per second. Other punched tape may be read at either speed. Start and stop times are 5 and 20 milliseconds, respectively. The reader stops on the stop character or between characters at both high and low speeds. A minimum of four feet of tape leader is required with reels, and at least one foot is needed for strip reading. Tape widths of 0.675,0.875, or 1 inch can be handled. Reel diameters of either 5.5 or 7 inches can be accommodated. Beginning and end-of-tape indicators are sensed by means of adhesive conductive strips on the tape being read. The operator can select different paper tape channels by use of a plugboard which is supplied as part of the B 141 Reader. A code punched in all channels (whether 6, 7, or 8 level tape) is considered a delete code and is not transferred to the Processor when operating without a translator. Reading can be performed in a buffered or unbuffered mode. Maximum use of the buffered mode is realized if the data is arranged in 80-character blocks. Paper Tape Space Forward, Space Backward, and Rewind instructions are provided. Upon detection of an information parity error, the reading is completed and a branch is taken to a subroutine. The following switches and indicators are provided: Form Function Comment Local: Remote: Stop: 6/65 switch (and light) switch (and light) switch reader' not ready for instruction. reader is ready for instruction. stops reader (Local mode). Guide Selection: switch Comment moves tape forward to next control code or 'end-of-tape marker (Local mode). moves tape in reverse until beginning-oftape marker is reached and then stops (Local plus Reel modes) . selects Reel or Strip input. provides manual selection of three different control codes, any combination of which can be used; each set has OFF (ignore), STORE AND STOP, DELETE AND STOP, and DELETE AND CONTINUE positions. selects high or low tape speed. determines whether parity checking will take place. provides for the use of teletype tape as input. allows loading of tape (Local mode) . starts motors, etc. (Local mode) . tape moves in reverse to next control code or beginning-of-tape marker (Local mode). indicates when the B 141 is selected by operator. Interchanges card reader with B 141. indicates a parity error has occurred. if in Reel mode and no tape is loaded (or tape breaks), the reel motors are shut off. adjusts tape guiding mechanisms to the width of the tape. . 13 Availability: .••.•.• 3 to 4 months . . 14 First Delivery: ....• September. 1963 . / 201 :075.100 Burroughs B 100/200/300 Series Input-Output B 341 Paper Tape Punch INPUT-OUTPUT: B 341 PAPER TAPE PUNCH .1 GENERAL ,11 Identity:......... . 12 Description Tape Feed: switch The B 341 Paper Tape Punch punches data from core storage onto paper tape at a speed of 100 characters per second. One paper tape punch can be used with all B 200/300 Series six-microsecond central processors. The B 341 is capable of punching 5, 6, 7, or 8 level tape. Standard code is the BCL paper tape code (see Data Code Table No.5). Local: switch and light switch and light 4-position switch The following switches and indicators are provided: B 341 Paper Tape Punch. Function Remote: Control Code: Two optional features are available: an Output Code Translator and a Punch Selector Switch. The translator allows translation of Burroughs Common Language (BCL), code to any 5, 6, 7 ,or 8 level code, for up to 64 different characters. The manual selector switch provides interchangeability between the paper tape punch and the card punch. The punch is capable of punching paper or plastic tape in widths of 0.675, 0.875, and 1 inch. Maximum reel diameter is eight inches. and it is not necessary to have a take-up reel. An end-oftape indication is produced whenever 35 feet (or less) of tape is left on the supply reel. The operator can select different paper tape channels by use of a plugboard which is supplied as part of the B 341 Punch. Level Designation: Comment switch Unit Selected: switch and light Low Tape: light tape is fed with all holes punched. punch is not ready for an instruction. punch is ready for an instruction. determine action by punch when a control code is detected: OFF (ignore), PUNCH AND STOP, DELETE AND STOP, and DELETE AND CONTINUE. selects number of channels and width of paper tape. indicates paper tape punch is on-line. Selects card punch or B341. 35 feet of tape or less remains on supply reel. .13 Availability: ..••.. 3 t04 months. .14 First Delivery: . • . . . January, 1964. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201 :081.100 Burroughs B 100/200/300 Series Input.Output B 320/321/325 line Printers INPUT·OUTPUT: B 320/321/325 LINE PRINTERS •1 GENERAL .11 Identity: .•••••.••• B 320 Line Printer. B 321 Line Printer. B 325 Line Printer. .12 Description, The B 321 Line Printer prints at the maximum rate of 700 single-spaced alphameric lines per minute. When average line spacingocc:urs at one-inch intervals, the speed is reduced to about 540 lines per minute. Sixty-four characters (10 numeric, 26 alphabetic, and 28 special symbols) can be printed in a line of 120 print positions. The comprehensive character set is listed in the Data Code Table on page 201:141.100. The B 320 Line Prin~er is a slower version of the B 321 and is offered at a substantially reduced price. This slower model operates at a peak speed of 475 lines per minute. The B 325 Line Printer increases the printing flexibility by providing 132 print positions. Except for these differences in ' speed and print-block size, respectiv:ely, the B 320 and B 325 Line Printers are functionallyidentical with the B 321 modeL' Therefore, in the description that follows, reference is made only to the characteristics and capabilities of the B 321. The B 321 Line Printer contains its own 120character buffer, as well as the necessary control equipment. At the peak speed of 700 lines per minute, the total print-cycle timeis85;7 milliseconds. Of this time, only 1. 3 milliseconds is consumed in loading the buffer. As soon as the buffer is loaded, printing commences and the central processor is free for other processing. Line advance can occur before or after printing and can be specified as 0, I, or 2 lines. Skipping, before or after printing, is controlled by a 12channel punched tape lpop and can occur at a rate of 25 to 40 inches per second. Printing is performed on continuous' card or paper forms. Forms width can extend from 5, to 20 inQhes; the maximum length is 22 inches per form. Ou:tput' format spacing is 10 characters per inch horizontally and 6 or 8 lines per inch vertically. As many as five carbons plus the original form will function properly in the printers. The forms are loaded in the cabinet beneath the printing mechanism and are transported through the unit by means of pin-fed tractors to the self-maintaining stacker . A Paper-Exhausted indicator/switch and several broken-paper detectors provide error-condition indications and serve to interlock the central ,processor. Line formatting, spacing, and skipping are under control of the stored program. When a print instruction is initiated, 120 alphameric characters from anywhere in core storage are loaded into the printer's buffer. As soon as the buffer is ftill, the central processor is freed and the 'printing cycle begins. The translation from Burroughs Common Language (BCL) internal code to the 64-character print set is performed automatically. The actual printing is accomplished by hammer strokes against a continuously-rotating engraved drum. Once the drum has made a complete revolution, every character will have been printed, and the paper motion can begin. The next printing cycle cannot begin until all paper motion has ceased. A number of functional controls are provided to enable the operator to adjust for variances in the size of the forms and the number of interleaved c!lrbons. The operator can also adjust the horizontal and vertical alignment of the forms and the print quality of individual print positions. Error checks are made for 'Proper character parity in the bUffer, for :drum rotation synchronization,and for the presence of paper. Errors are signalled by a' ,control panel indicator and restilt in a halt of the system. Error conditions and unoperational statUs can be tested by the Unit Interrogate command, which is optional in the B 200/300 Series central processors. Printer timing conflicts res tilt in an interlock of the printer until execution of the print instruction is possible. The differences between the B 320, B 321, and B 325 Line Printers, with regard to both capabilities and configuration requirements, are indicated in Table I. A noteworthy feature, the Dual Printer Control, is optional for any central processor in the Series except the B 100 Series models and the VRC. With this feature two line printers, utilizing the print buffering to ftill advantage, can theoretically operate simtiltaneously and at their rated ~peeds. ' The graph on the following page illustrates the effective speeds of the three Line Printers under various spacing conditions. (Contd.) 6/65 ,/ 201 :081.801 BURROUGHS B 100/200/300 SERIES TABLE I: LINE PRINTER CHARACTERISTICS Line Printer Model B 320 B 321 B 325 Maximum speed (lines per minute) 475 700 700 Number of print positions 120 120 132 B 100/200/300 Series availability All models All, with adapter for B 100 Series B 200/300 Series 6-ILsec Processor Effective Speed: B 320, B 321, and B 325 Line Printers 1,000 900 800 700 i""" 600 Effective Speed: Printed Lines Per Minute 500 ...... 400 r... ....... r--. "" 300 ............. ............. "- ~ ............... r-...- ~ r--..- - -~ ~ ---- B 320 - 200 100 90 80 70 60 50 40 30 20 a 1/2 1 2 3 4 5 Inter-Line Pitch in Inches © 1965 AUERBACH Corpor.ation and AUERBACH Info, Inc. 6/65 201 :082.100 Burroughs B 100/200/300 Series Input-Output B 328/329 Line Printers INPUT-OUTPUT: 8328/329 LINE PRINTERS .1< .. GENERAL -.UIdentity: . . • . • . . . . . B 328 Line Printer. B 329 Line Printer. • 12 Description The B 328 and B 329 Line Printers operate at a ··maximum rate of 1,040 lines per minute at single spacing when the characters to be printed are limited to those in a continuous 37 -character segment of the print drum. The peak rate can also be maintained while printing and triple-spacing if a 16character "numeric and edit" set is used. As larger character sets are used, the operational speeds are reduced, as shown in Table· I below. When the entire 64-character set is utilized, the single-spaced speed will not fall below 734 lines per m~ute_ The only differences between the B 328 and B 329 Line Printers are in the number of print positions provided per line and in the configuration requirements for each model. The B 328 has 120 positions on a line and can be connected to any B 100/200/300 Series central processor except the B 100 line. The B 329 has 132 print positions and can function only with the B 200/300 Series six-microsecond central processor. operations as soon as the buffer is loaded (within 1.3 milliseconds). As each character in the buffer is printed, its buffer position is set to a blank. Immediately upon detection of a completely blank buffer, paper motion begins. (A minimum of 16 characters on the drum must pass the printing mechanism before paper advancing can begin.) The start of paper motion is therefore not contingent on the completion of a full drum revolution. The operational speeds of the printers are governed by the rotational speed of the print drum and the paper advance speeds. The rotational speed is 1,040 rpm, or one revolution every 57.7 milliseconds. The printing or bypassing of each character on the drum requires 0_ 9 millisecond. To advance the form a single space requires 24 milliseconds for the first space and 7 milliseconds for each additional space. Therefore, to maintain printing speeds of 1,040 lines per minute, the total printing and spacing time must not exceed 57.7 milliseconds. On this basis, up to 37 con~ secutive alphameric characters can be printed and single spacing can occur during a single drum revolution. The chart below indicates effective speeds as character sets and spacing demands are varied. Standard features of the B 328 and B 329 Line Printers include a ribbon-tracking device to sense and control ribbon mistracking, and duplicate controls and indicators on the rear of the cabinets to assist the operator. Except for these added features, the B 328 and B 329 Line Printers have the same physical characteristics, forms controis, and error-checking devices as the B320, B 321, and B 325 printers described in the previous report section, page 201:081.100. Burroughs' standard 64-character drum printer set has been statistically analyzed and regrouped on the drum according to frequency of use. The 37 most frequently used characters (10 numeric, 26 alphabetic, and the period) are arranged in consecutive locations around the drum. The revised drum arrangement and a "quick cancel" memoryresult in the improved performance of the B 328 Line Printer over the 700-line-per-minute B 321 model. Printing occurs after the central processor loads· the printer's buffer with 120 or 132 characters from core storage. The processor is free for additional The first deliveries of the B 328 and B 329 1,040line-per-minute printers are scheduled for June, 1965. Availability has been set at eight months. TABLE I: EFFECTIVE SPEEDS OF B 328 AND B 329 LINE PRINTERS Printed Lines per Minute Using Various Consecutive Character Sets Lines Advanced per Line Printed 1 2 3 4 5 6/65 16 Characters 37 Characters 64 Characters 1040 1040 1040 692 624 1040 692 692 624 560 734 677 626 584 546 A .01111,,,,,,,,1111, AUERBACH 201 :083.100 Burroughs B 100/200/300 Series Input-Output Multiple Tape Listers i "'INPUT-OUTPUT: MULTIPLE TAPE LISTERS .1 GENERAL • 11 Identity: .••••.•... B B B B B .12 Description 322 323 326 332 333 Multiple Multiple Multiple Multiple Multiple Tape- Lister. Tape Lister. Tape Lister. Tape Lister. Tape Lister. The Burroughs Multiple Tape Listers provide highspeed master and detail listings of MICR documents as they are read by a MICR Sorter-Reader. From 6 to 18 ,individually-controlled listing tapes can be controlled by a single central processor, enabling the contents of each Sorter-Reader pocket to be listed on a separate tape. In addition, master and difference tapes can be printed without interrupting the flow of MICR documents. Up to three listing tapes can be printed upon simultaneously, at speeds up to 1,600 lines per minute for each tape. All the tapes can be skipped 2.5 inches or slewed 10 inches simultaneously, if desired. From one to three Multiple Tape Listers can be connected to a B 100/200/300 Series Central Processor. Each lister unit controls six paper tapes. Printing is performed on 2. 5-inch-wide, single or two-ply adding machine forms. Print lines can extend to 22 print positions on each tape, with a horizontal spacing of 10 positions per inch and vertical spacing of 6 lines per inch. Each lister unit contains an engraved print drum composed of six 22-column segments mounted on a horizontal shaft. Printing occurs whenhammer strokes drive the paper forms against the symbols on the revolving drum. The drum's character set can range from a-ilumeric-and-special-symbol 24-character set to a 40-character set with full numeric and alphabetic printing capability. Each configuration of one, two, or three Multiple Tape Listers includes a 44-character buffer and a self-contained set of controlling devices. The buffer is interlocked from the time it is loaded by the central processor until printing is completed and paper motion begins. An attempt to gain access • 121 to the buffer during the print cycle will cause the central processor to be delayed until the print cycle is completed. I \ "-- The central processor loads the buffer in 0.7 millisecond. Immediately after the brief bufferloading operation, the central processor is released for further operations. Contents of the first 22 positions of the buffer are then printed on one listing tape, and positions 23 to 44 are simultaneously printed on another. Individual tape and lister unit designations 1J.re controlled by the stored program. The two sections of the buffer can contain the same or different information. Single spacing of the tapes after printing is performed automatically. The tapes can also be individually spaced, skipped, or slewed at any time. Skipping a tape 2.5 inches after printing interlocks the print mechanism for 100 milliseconds, but it should be noted that multiple tape listing operations will normally be single-spaced. The paper listing tapes are 2. 5 inches wide and are provided in rolls or in fan-fold form in lengths up to 1,000 feet. The paper advance operations are controlled by pressure rollers that direct the tapes to stackers at the rear of the cabinets. Stacker capacity for each tape is 1,000 feet. Forty-five minutes of consecutive printing on a single tape could be accomplished before exhausting the paper supply and halting the system. ' The Print on Lister command provides for branching to alternative routines when a print error occurs. However, this capability is present only when the listers are used with the B 200/ 300 Series 6-microsecond central processor. This level of central processor also has the optional capability to test the operational status of the listers and to continue processing if they are found to be unavailable. Duplicate control panels are located at the front and rear of the lister cabinets. Any or all listing tapes can be manually skipped by a paper-advance switch. Also, since two listers can be used alternatively with up to two Burroughs Line Printers on the same system, a manual Printer/Lister Selector switch can be provided. A print check indicator will be illuminated if data is received in the buffer with improper parity or if the buffer and drum-revolution timings are out of synchronization. If branching upon error indicators has not been specified by the program, the central processor will halt on the next instruction that references the lister. The individual characteristics and capabilities of Burroughs' five Multiple Tape Lister models are described below. B 322 Multiple Tape Lister The B 322 Lister prints 22-position lines at speeds up to 1,600 lines per minute. It has a 24-character print set consisting of 10 numeric, 10 alphabetic (B, C, D, L, M, R, S, T, X, and y), and 4 editing characters. The alphabetic set is designed to provide indicative symbols for most banking operations. One or two 6-tape B 322 Listers can be attached to any central processor in the B 100/200/ 300 Series. Optional features are available to allow the simultaneous skipping or slewing of all listing tapes (either 6 or 12), or of all but the master tape. First delivery of the B 322 Lister occurred during the second quarter of 1962. © 1965 AUERBACH Corporotion and AUERBACH Info, Inc. 6/65 201:083.122 .122 B 323 Multiple Tape Lister The 323 Lister prints at a maximum speed of 1,600 lines per minute, provided that a 16character set of 10 numeric and 6 special symbols is used exclusively. The noteworthy feature of the B 323 Lister is the expansion of the character set to 40 characters. Full alphabetic printing capability is thereby offered, although at a greatly reduced rate of speed. The lister will print at 600 singlespaced lines per minute in the alphameric mode, as opposed to the 1,600 line-per-minute rate in the special 16-character numeric mode. One or two B 323 Listers can be connected to any B 200 or B 3.00 Series Central Processor. Simultaneous tape skipping is a standard feature, but simultaneous tape slewing is optional. First delivery of this version of the Multiple Tape Lister occurred in January, 1964. .123 B 326 Multiple Tape Lister The B 326 Lister differs from the B 322 model described in Paragraph .121 above only in its printing speed. The B 326 prints at a·maximum rate of 1,250 lines per minute. It was designed to operate efficiently with the B 106 and B 107 l,200-document-per-minute Sorter-Readers. BURROUGHS B 100/200/300 SERIES .124 B 332 and B 333 Multiple Tape Listers The B 332 18-tape Multiple Tape Lister subsystem is formed by combining a B 332 Master. Lister with two B 333 Slave Lister sections with six listing tapes each. The 44-character buffer and controlling devices are contained within the B 332 unit. Singlespaced printing speeds range from 800 alphameric to 1,600 numeric lines per minute. Up to three listing tapes can be printed upon simultaneously, The characters in buffer positions 1 to 22 can be printed on both the master tape and a selected detail tape. The second section of the buffer can be loaded with information unrelated to the document-processing operation. This information can be printed concurrently on a selected third tape. The provision to print on 18 individually-controlled tapes provides functional compatibility with B 116 16-pocket MICR Sorter-Reader. Full tape skipping and slewing flexibility is offered as standard equipment. One B 332 Lister and 0, 1, or 2 B 333 Slave Listers are available only for use" with the B 300 Series Central Processor; they cannot be used with older B 100/200 Series systems. The availability of these units is quoted as 6 to 8 months. / 6/65 201 :091.1 00 Burroughs B 1001200/300 Series Input-Output Magnetic Tape Units INPUT-OUTPUT: MAGNETIC TAPE UNITS .1 GENERAL .11 Identity: .12 .......• B B B B B 421 422 423 424 425 Magnetic Magnetic Magnetic Magnetic Magnetic Tape Tape Tape Tape Tape end-of-information mark in storage is sensed . The tape must come to a complete stop after either of these operations before any other tape operation can be initiated by the central processor. Unit. Unit. Unit. Unit. Unit. Data is recorded in variable-length blocks. The size of the blocks can extend from seven characters to the limit of core storage. At a block size of 1,000 characters, the 200, 556, and 800bit-per-inch. tape units can store 4,900, 11,100, and 13,800 blocks, respectively, on a 2, 400-foot reel of tape. Given the same 1, OOO-character blocks, the effective data transfer rates of the 18KC and 72KC tape units will be 14,400 and 41,800 characters per second, respectively. Relative speeds and capacities of the five Burroughs tape unit models are listed in Table I. A graph is also provided (page 201:091. 801) to demonstrate the variation in effective speed of each model as the size of the data blocks increases. Description The Burroughs Magnetic Tape Units provide a range of transfer rates from 18,000 to 72,000 characters per second and packing densities of 200, 556, and 800 characters per inch. Alphameric characters in binary-coded decimal form are stored on O. 5-inch Mylar-based tape on reels 10.5 inches in diameter. The reel capacity is 2,400 feet, allowing a maximum of 22. 1 million characters per reel at the 800 characters-per-inch density. Magnetic tape operations are not buffered, and, .with the exception of tape rewinding and stopping, they require the use of the central processor throughout. In addition to the provisions for tape reading and recording, the capability is provided to backspace the tape until an interblock gap is sensed, and to erase the tape forward until a group mark is encountered in core storage. The time required to set the tape in motion in a backward direction is 11.2 milliseconds. By comparison, the start time for a tape read operation will be from 5.0 to 6.8 milliseconds. Start-stop overhead timings are also supplied in Table I. Each central processor in the B 100/200/300 Series can control up to six magnetic tape units. Operational problems with anyone tape unit will not affect the performance of the others. Reading and recording operations are performed only in the forward direction. The tape reading operation transfers data from tape to core storage until a 0.7 5-inch interblock gap is sensed. A special end-of-information mark is stored in memory following the last character transferred. The recording operation transfers information from core storage and records it on tape until the Binary tape reading and recording capabilities are provided when any of the tape unit models are used with a B 200/300 Series 6-microsecond TABLE I: CHARACTERISTICS OF BURROUGHS MAGNETIC TAPE UNITS Model No. I \. Tape Speed, inches per sec Recording Density, bits per inch Peak Speed, char per sec Interblock Gap Lengths inches msec (1) chars (2) Efficiency, % (3) 100-char blocks l,OOO-char blocks Demand on Core Storage, % Rewind Speed, inches per sec B 421 90 200 556 18,000 50,000 0.75 13.8 248 690 27.7 13.0 80:5 60.0 100 320 B 422 120 200 556 24,000 66,000 0.75 11.0 264 726 26.2 12.1 75.0 59.0 100 320 B 423 120 200 24,000 0.75 10.0 240 26.2 75.0 100 320 B 424 83 800 66,000 0.75 10.0 660 13.1 60.2 100 320 90 200 556 800 18,000 50,000 72,000 0.75 10.0 180 500 720 27.7 13.0 12.2 80.5 60.0 58.1 100 320 B 425 (1) (2) (3) Time in milliseconds to traverse each interblock gap when reading or writing consecutive blocks. Effective number of character positions occupied by each interblock gap. Effective speed at the indicated block size, expressed as a percentage of peak speed. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65. 201 :091.120 . 12 Description (Contd.) BURROUGHS B 100/200/300 SERIES .121 central processor. Any binary-coded decimal code can thereby be read and stored in memory, where a programmed code translation can be effected if desired. The binary recording operation is terminated When every character in memOFY from the point of origin to the upper end of core storage has been recorded, in a single , tape block. The tape units used in the B 100/200/300 Series are fully compatible with those of the Burrough~ B 5500 system. Compatibility is also achieved wlth the IBM 729 and 7330 tape units using binarycoded-decimal coding at 200, 556, or 800 rows per inch. The ability to read tape in the binary mode adds still further possibilities in the area of tape compatibility. When reading or recording, tape is pulled from a vacuum-column buffer by a moving capstan and pinch-roller assembly and passed under a dualgap read/write head. Tape speed past the head. varies from 83 to 120 inches per second accordmg to the tape unit model (see Table 1). The read section of the head follows the write section by 0.15 inches to allow for immediate read-afterwrite checking. Tape is then drawn into another vacuum column preceding the take-up reel to minimize tape damage and breakage. Data on tape is arranged in seven-bit rows, six bits for information and one for even-parity checking. The number of rows per block is limited only by the size of the available core storage. When recording information in the binary mode, the parity scheme is odd, consistent with that of core storage. In addition to the data-transfer validation provided by the read-after-write check, several , other checks are provided. Row parity is checked during both reading and recording. A longitudinal check character for each block is developed during recording and checked during subsequent readings. Data transfer errors of any kind cause an immediate program branch to a corrective routine. Program branching will also occur when a reflective tape marker is sensed at the end of a tape reel during recording, and when a special finalblock character is recognized during reading. Reel loading is facilitated by a latch-leader device affixed to every reel. The leader is latched to a section of tape permanently attached to the take-up transport, and a Load button is pushed. Tape positioning for proper operation is then performed automatically. Density-switching and high-speed rewinding (320 inches per second) can also be controlled at the tape unit's control panel. The differentiating characteristics between the five models of Burroughs magnetic tape units are described in the paragraphs that follow and in the associated chart and graph. B 421 MagnetiC Tape Unit The B 421 provides peak data transfer rates of 18 000 or 50 000 characters per second at pa~king densities of 200 or 556 rows per inch. It can be connected to any model B 200 or B 300 Series Central Processor, but cannot be combined with any other tape unit model except the B 425. First delivery occurred during the third quarter of 1962. .122 B 422 Magnetic Tape Unit The densities of the B 422 Tape Unit are the same as those of the B 421 model, but its peak data transfer rate has been increased' to 24,000 or 66,000 characters per second. The B 422 Tape Unit can be connected to the B 200/300 , Series 6-microsecond Central Processor only. It can function in combination with both the B 423 and B 424 models. The B 422 unit has been available since January, 1964. .123 B 423 Magnetic Tape Unit The B 423 Tape Unit is basically the same as the B 422, except that it lacks the high speed and high density options. Its peak data transfer rate is 24 000 characters per second. Tape start time the B 423 has been reduced to 5.0 milliseconds, as compared with 6.8 milliseconds for the B 422 model. The B 423 can be connected to any central processor in the B 100/200/300 Series and can be used in combination with the B 422 and B 424 models. First delivery was made in February, 1964. in .124 B 424 MagnetiC Tape Unit The increased packing density of 800 rows per inch was introduced to the Burroughs line of tape units when the B 424 model was delivered in May, 1965. Its peak data transfer rate is a non-variable 66,000 characters per second at a tape speed of 83 inches per second. Up to six B 424 Tape Units can be used with any B 200/300 Series 6-microsecond Central Processor, but the B 424 cannot be used in the same system with any other Burroughs tape unit except the B 422. .125 B 425 MagnetiC Tape Unit With the announcement of its B 300 Series in February, 1965, Burroughs introduced the ~ ~25 Tape Unit. This unit provides packing denslties of 200 556 and 800 rows per inch, and a tape speed ~f 90'inches per second. Thu~, in a s.ingle unit, full compatibility has been achleved wlth all of the IBM 7330 and 729 tape units. The B 425 Tape Unit can be connected j:o the B 300 Series Central Processor only. Its use requires a special processor control module. (Contd. ) 6/65 201:091.801 INPUT·OUTPUT: MAGNETIC TAPE UNITS Effective Speeds: Burroughs Magnetic Tape Units 1,000,000 7 4 2 100,000 7 4 Effective Speed: Chara:cters per Second ,. IV, 2 V, ~ ~ ~ ,." 10,000 ~ ~ ~ i-"" ...... ~ ~ ~ ...... ..t.;; 4 1,000 7 II III ~~ I ~!- ,,-' '" ./ 7 2 ~ y- ~ ~~ ~ ~ " II'rL 4 2 100 10 2 4 7 100 2 4 7 1,000 2 4 7 10,000 Characters per Block LEGEND I. II. Ill. IV. V. © Models B 421 and B 425 at 200 char/inch. Models B 421 and B 425 at 556 char/inch. Models B 422 and B 423 at 200 char/inch. Model B 422 at 556 char/inch. Model B 425 at 800 char/inch. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201:101.100 Burroughs B 1001200/300 Series Input-Output B 401 Record Processor INPUT-OUTPUT: B 401 RECORD PROCESSOR .1 GENERAL • 11 Identity:.......... B 401 Record Processor. . 12 Description The Console of the B 401 provides for manual operation of the Record Processor. The Console contains a 12-column numeric keyboard and a set of special character keys. These keys can be read by the VRC Central Processor, under program control. Ledger cards are fed from one of three hoppers: main, auxiliary, and a singlecard hopper. Two stackers can be selected: primary or auxiliary. All hopper and stacker selection is under program control. The B 401 Record Processor and Console provides the VRC System (Page 201:031.500) with the capability for automatic handling, reading, and updating of unit records. Ledger cards, such as those used in banking and inventory applications, are accepted as direct computer input for processing and updating, providing visual account histories on the records. By means of a programmed cycle of read, process, print, and update, ledgers can be handled at 45 per minute at 100 percent account activity, printing one line of new information on each ledger. Inactive accounts are passed by at 180 per minute. On a magnetic stripe on the reverse side of each .ledger, information is stored about the account status and the position of the most recent line of printing. This information (maximum of 80 characters) is read as the ledger is moved from a "ready" station past a magnetic read head. The VRC Central Processor determines whether the ledger should be stopped at the print area of the Record Processor, or ejected as inactive, on the basis of other data read into the Central Processor (from an MICR Sorter-Reader, for example). If the account is to be updated, new balance information is calculated and printed on the ledger. As the ledger is ejected, new information is recorded on the magnetic stripe on the reverse side of the ledger. A check head reads the information just recorded for comparison with the information in core storage. The print station may also contain one or two continuous forms (side by Side), which can be printed upon separately or together with ledgers. Presence of a ledger will mask some of the form printing area. If forms printing is desired in this case, it can be done after the ledger is ejected. Printing is done with automatic single spacing at a maximum speed of 214 lines per minute while printing on one ledger, or on forms. Printing format is 160 positions per line and six lines per inch. Four of the print positions are blocked by ribbon guides, leaving 156 positions available for actual printing. Since the ribbon guides are movable, a print instruction transfers 160 characters per line. Instructions are available for spacing the forms and ledger one line without printing. The two forms and the ledger mi.n be moved in any combination in this instruction. Printing is accomplished with a 12-character set on each type bar, containing only the 0-9 and 2 special symbols. 6/65 An Optical Reader (optional) aids in comparison of account numbers during balance transfer operations . · 14 First Delivery: ..•.. 3rd qtr. 1961. ·2 PHYSICAL FORM .21 Drive Mechanism .211 Drive past' the head: .. ledgers: pinch rollers. forms: sprocket drive. · 22 Sensing and Recording Systems .221 Recording system: ... printed characters: type bars. magnetic characters: magnetic head. · 222 Sensing system: ..•. magnetic head for magnetic characters. optional Optical Reader for special digits at auxiliary read station. .23 Multiple Copies .231 Maximum number: ... forms: 1 + 2 carbons. ledgers: none. · 24 Arrangement of Heads Use of station: ....• reading ledger magnetic stripe . . Stacks: .....•..•.• 1. Heads/stack: ..•.•.. 1. Method of use: ..•.•• ledger passes head. Use of station: .•...• writing onto ledger magnetic stripe. Stacks: ..•..••.••• 1. Heads/stack: ., ..•.. 1. Method of use: .•..•• ledger passes head. Use of station: •..... checking data recorded on magnetic stripe. Stacks: .•••.•.••.. 1. Heads/stack: ..•.•.• 1. Method of use: . . . • . . ledger passes head. (Contd.) / INPUT-OUTPUT: B 401 RECORD PROCESSOR _24 Arrangement of Heads (Contd.) .35 Use of station: . . . . . . printing on ledger or forms. Stacks: • • . . . . . • . . • 1. Heads/stack: .•...•• 160. Method of use: .•••.. one line at a time. Use of station: •.•.•• reading special binary characters on ledger. Stacks: . • • . • . . . . • . 1. Heads/stack: . . . . • . . 1. Method of use:. . . • . . optical; ledger passes head. • 25 Range of Symbols Numerals: . . . . . . . . 10 0-9. Letters: . . • . • • • • .• 5 see below. * Special: . . . . • . • . .. 9 see below. * Alternatives: .•••.• upon special request., FORTRAN set: •. . • • no. Req. COBOL set: ••. no. Total: .•.•.••.•.• 12 at one time on any type bar. * Special symbols and letters: •.•..••• one type bar contains numerals 0-9 plus 1 of the groups of 2 characters shown: LS and X and and OD and and RT R Y , A SC Y DM .3 EXTERNAL STORAGE • 31 Form of Storage and CM and , and D and SC Unit Record Cards .311 Medium: ledger cards with magnetic stripe on rear side .312 Phenomenon: printing on front side; magnetization on rear side · 32 201: 101.240 Physical Dimensions .351 Overall width: .•.••• Ledger: allowable width 6.5, 7, 8, 9, 10,. 11, 12, 13, or 14 inches. Forms: 3.25 to 18 inches by vernier. Combined width of both forms used may not exceed 18 inches, including the space between them. Minimum space is 0.375 inch. .352 Length Ledger: • . • • • • . .• 11 inches. Forms: •..••.. '.• 3.5, 5.5, 7, or 11 inches • • 353 Maximum margins Ledgers Left: . • Right: . Top: .. Bottom: . . . • • . . • • • • • • • . . • • • • . . . • • . • • • • • • . • • • 0 inch 0 inch 2 inches 1 inch .4 CONTROLLER: ..••. built into central processor. • 42 Connection to System .421 On-line: • . . • • . . . . • one B 401 Record Processor, in VRC System only. .422 Off-line: .•.•••••.• none. • 44 Data Transfer Control • 441 Size of load Printer: •...•.••• Magnetic stripe: ••• .442 Input-output areas: •• • 443 Input-output area access: . . . • • • . . • • 444 Input-output area lockout: • • • • . . . • • · 445 Table control: ••.•• '. .446 Synchronization: .••• 160 char. 80 char. max. core storage. each character . none. none . automatic. Journal Forms paper, fanfold, multiset. printing by type bars. .5 PROGRAM FACILITIES AVAILABLE .51 Blocks Printer • 511 Size of block: · 512 Block demarcation Input: Output: .322 Parallel by: • 324 Track use: .325 Row use: Unit Record Cards Journal Forms printing: 1 row of 140 char max at 6 rows/in magnetic char: serial by 80 char. 140 col max at 10 col/in all for data all for data 1 row of 160 char at 6 rows/in. .52 none counter Printer .521 Input: .523 Stepping: .524 Skipping: .33 Coding:.......... as in Data Code Table No.4. .34 Format Compatibility: none. © end-of file symbol. group mark ($) in core storage. Input-Output Operations .522 Output: 160 col at 10 col/in. all for data. all for data. Magnetic Stripe 160 char up to 80 char. Positional Arrangement .321 Serial by: 1 inch. 1 inch. 0.5 inch. 0.5 inch. .525 Marking: .526 Searching; 1965 AUERBACH Corporation and AUERBACH Info, Inc. MagnetiC Stripe none up to 80 char specified by $. 160 char up to 80 char specimarked by group fied by mark in core counter storage $. single none. space to start none. of next form none none. none none. 6/65 BURROUGHS B 100/200/300 SERIES 201: 101.530 .72 .53 Code Translationt automatic. .54 Format Control: • , •. by program. .55 Control OperationS· .73 , .731 Select hopper: ••.••. yes. Select stacker: •.... yes. Select format: •..... no. • 56 Testable Conditions:, • none. •6 PERFORMANCE • 61 Conditions I: .. . . • • • • . . • • . . passing inactive account. II: .•..•..••••.•• reading activeaccounts; printing one line per ledger. III: • •. • . • . • . . • • • single-space printing. • 62 Processor: I Processor: II Processor: In .7 6/65 .733 • 734 Speeds • 621 Nominal or peak ·speed: • • •. . • • . • . I; 180 ledgers/min. II; 44 ledgers/min. In; 214 lines 'per min. • 622 hnpQrtant parameters Read ledger: ....•• 282 msec. Read data entry keyboard: ••.•••• 1.23 sec. Processing time on Condition II: . • • • . 31 msec. Line advance time when printing consecutive lines: •••• 35 msec. Align ledger: ~ • • . . . 189 to 345 msec depending , on line on ledger. Write on magnetic stripe and eject ledger: •.•..•••• 630 to 474 msec depending on starting line on ledger. Print one line on ledger: ....•••.• 250 msec. .623 Overhead: .•• ; ••••• none; feeding rate depends on program. However, if printing successive lines on same ledger, print cycle goes from 281 msec to 316 msec if processing .time exceeds 31 nisec . • 624 Effective speeds: •.•• II; 214/(3.82 + N) ledgers/ min. N = No. lines printed/ledger. 66 msec IWailable processing time/line printed. • 63 Demands on System msec Component Condition per ledger .Q!:. Percentage .71 • 732 282 1,084 avo 250 84. 80. 89. EXTERNAL FACILITIES Adjgstments ' Adjgstment Method Comment Form width Form depth tractor cam by operator. by operator. .8 Other Controls Form Comment Function keyboard for entry of data. Data entry: Form and record !ll..anual positioning. movement: switches Loading and Unloading Volumes. handled Storage Capacity Forms: .•..••••. stack of 6 inches . Ledgers: Primary hopper: .. 1, 000 ledgers. Auxiliary hopper: .. 500 ledgers. Manual feeder: •.. 1 record. Primary stacker: •. 1, 000 ledgers. Auxiliary stacker: . 150 ledgers. Replenishment time: •. 1 to 2 minutes; unit needs to be stopped. Adjustment time: ...• 1 to 5 minutes. Optimum reloading period: • . . . . • . . . . ledgers; 22 minutes if printing on each ledger. forms; 76 minutes if printing at maximum speed on 300 3-part sets 11 inches long. ERRORS, CHECKS AND ACTION Check or Interlock Action Error post-rec- . halt; ledger ejected; Recording: ord read alarm. * check stop computer; Reading alarm; records sent to auxiliary stacker; B 401 console alarm. * Input area overnone. flow: Output block size: none. Invalid code: none. Nearly exhausted alarm. forms: check hnperfect medium: none. Timing conflicts: interlock wait. Two documents check stop computer, fed: alarm; records sent to auxiliary stacker,; B 401 console alarm. * Missing information: check . program branch. check Stacker full: halt and alarm. Hopper empty: halt on read check instruction. End of form when printing: program branch. check Record out of alignment: halt; alarm, reccheck ord ejected. Program continues in sequence when Continue button on B 401 console is depressed. spacing suppressed; check Print error: halt, alarm. * check Ledger missed: halt; alarm; ledger ejected. * Program branch when Continue button on B 401 console depressed. ./ 201:102.100 Burroughs B 1001200/300 Series Input-Output MICR Sorter-Readers INPUT-OUTPUT: MICR SORTER-READERS .1 GENERAL .11 Identity: .12 BIOI B 102 B 103 B 104 B 106 B 107 B 116 Sorter-Reader. Sorter-Reader. Sorter-Reader. Sorter-Reader. Sorter-Reader. Sorter-Reader. Sorter-Reader. Description The Burroughs Sorter-Readers are designed to read magnetically-encoded documents at speeds up to 1,560 documents per minute and to sort these items into one of 13 or 16 different pockets. The SorterReaders can serve as high-speed input devices to -any of the B 100/200/300 Series banking systems, or as off-line, general-purpose MICR document sorters. On-line reading speeds are matched by the printing speeds of the Burroughs Multiple Tape Listers (see Section 201:083), providing integrated systems for most banking operations. Documents are fed into the Sorter-Reader from a hopper-holding up to 3,000 documents of intermixed sizes. Two belts separate and feed items at a speed of 150 inches per second. The documents are accelerated to 400 inches per second and aligned for passage past the read head. The encoded characters are reinforced by a magnetic charge and then read serially from right to left. If the characters are defectively encoded or improperly formatted, or if the documents do not meet specification sizes, the item is directed to a reject pocket. After the items are read, they pass an optional endorsing station, where the individual bank's endorsement can be printed on each document without reducing the Sorter-Reader's rate of speed. In place of the endorsing station, a standby station can be provided to allow for the feeding and reading of individual documents in a demand mode under control of the central processor. After the magnetically-encoded information is read into the second of the central processor's input buffers and then transferred to core storage (within two milliseconds), the stored program determines the document's proper pocket selection and transfers this information back to the Sorter-Reader. A specific blade is then activated and the document enters the proper blade-transport, where it is sped by belts to its selected pocket. The capacity of each standard-sized pocket is 800 items, and both the pockets and the input hopper can be emptied and replenished while the Sorter-Reader is in highspeed operation. The Sorter-Reader has the ability to read 14 magnetic characters printed in Font E-13B, the standard adopted by the American Bankers' Association. Included in the character set are the numerals 0 through 9 and four special symbols: amount, on us, transit, and dash. Up to 59 characters can be encoded on each document, according to strict ABA formatting rules. The characters are spaced automatically in core storage into seven 12-character fields. The Sorter-Reader has been designed to handle paper documents ranging in thickness from 0.0040 to 0.0075 inch. Document size tolerances vary if the items are not uniform in size: Length: Width: Uniform Size Intermixed Sizes 5.75t09.5 inches 2.5 to 4.25 inches 5.9375 to 9.0625 inches 2.6875 to 4.0625 inches The Sorter-Readers can operate on-line in one of two modes: demand and flow. When a document is read in demand mode, it will remain in the standby station indefinitely until a pocket-select instruction routes it to its pocket. A maximum rate of 400 items per minute can be achieved in this mode. Flow mode operation establishes continuous feeding of documents at the full speed of the Sorter-Reader. In order to maintain this flow, each read instruction must be followed by a pocket-select instruction within approximately 10 milliseconds. After pocket selection, approximately 10 milliseconds of additional processing time remain before the next read instruction must be initiated. If these timing restrictions are exceeded by the stored program, the items in transport will be rejected and the system will halt. In the flow mode, the reading operation can be buffered or unbuffered. From 14.4 to 19.4 milliseconds are required to read the document and transfer the data either to the buffer or directly to core storage. Buffered reading permits this time to be utilized for processing. Buffer unloading requires only two milliseconds of the central processor's time, but this time occurs during the critical period before pocket selection. The advantage of unbuffered reading lies in the extra two milliseconds of processing time available before the pocket-select instruction must be given. Sorting speeds are determined by the length of the documents being read. The peak speed of 1,560 items per minute can be maintained only when processing a batch of items with a uniform length of 5.75 inches. Speeds for longer documents can be conveniently estimated by multiplying the feeding speed of 150 inches per second, times 60, and dividing by the average length of the documents being processed. Thus, for 9-inch documents, sorting proceeds at 1,000 documents per minute. (This relationship is not valid for the B 106 and B 107 models, which have a peak speed of only I, 200 docum ents per minute.) In order that each document can be read and sorted properly, proper spacing between documents must be maintained. Improper spacing is detected by strategically-located beams of light, causing the potenWllly erroneous documents to be routed to the reject pocket. Document feeding is stopped for 300 milliseconds for the rejecting process, © J 965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201: 102.120 .12 6/65 Description (Contd.) after which it resumes automatically. Such rejects will also occur if the documents fail to meet size specifications. During continuous or flow-mode operations, as well as during off-line sorting, the documents must be within 7.75 and 10.0 inches from each other in order to maintain SorterReader speed and insure accuracy of data transmission. An optical sensing device, the Batch Ticket Detector, automatically halts the flow of items at the conclusion of a controlled batch of documents. Summary operations can then be as lengthy as desired. This sensing device is located just beyond the mouth of the feeder, preventing the feeding of any document from the following batch before the transport can be halted. Another type of feed halt can occur if feeding is unsuccessful after 180 milliseconds. Mter halts of this. type, a Start Flow instruction cannot be subsequently initiated for 300 milliseconds. When MICR documents are read, the pulse sensed from each character is transferred to the SorterReader's character recognition device for testing of density and validity of encoding. If the character is not recognized as one of the 14 valid symbols, a binary 15 is transferred to memory in place of the unrecognizable character. Then, at the conclusion of the read instruction, an automatic program branch is taken if an error character (the binary 15) is discovered in the core storage input area. A similar program branch will occur if the first character read is not the Amount symbol. Corrective routines will usually reject the faulty item and resume the document flow. Document jams are detected in each of the two principal areas of the Sorter-Reader: the feed, align, and read areas; and the sorting area. If a jam is detected in the fir'st area, the transport mechanism halts immediately, preventing the feeding of any additional documents. The documents traveling to their selected pockets will continue their course. Should a jam occur in the sorting area, the feeder is also halted immediately, but all items that .have passed the read head will attempt to continue to their selected pockets. When any pocket reaches 75% of its capacity (approximately 600 documents), a warning indicator above the pocket is illuminated. If the warning is ignored and the pocket becomes full, the feeding mechanism ceases operations and a full-pocket indicator is displayed on the control panel of the Sorter-Reader. Displays also indicate: the specific area in the SorterReader where an item jam has occurred; the current mode of operation (on-line or off-line); the activation of the endorser; the inability to feed an item; and empty hopper conditions. Start, stop, and end-of-job controls are provided on the control panel, as well as along the length of the Sorter-Reader, to increase the operator's efficiency. The Sorter-Reader can be operated off-line for general MICR document sorting. Field and digit selection for sorting is accomplished by pushbuttons on the control panel, which function in conjunction with a plugboard. Override code detection is available to allow for two-way segregation of high-volume items. In 'lddition, a zerokill feature segregates items that need no further BURROUGHS B 100/200/300 SERIES sorting because they contain non-significant zeroes in all fields that remain to be sorted. In the off-line mode of operation, all timing synchronization is controlled by the Sorter-Reader itself. The various models of the Burroughs SorterReaders function in basically the same manner as described above. Individual differences in performance and configuration requirements are described in the paragraphs that follow. .121 BIOI and B 102 Sorter-Readers The BIOI Sorter-Reader operates in an off-line mode only, and can sort items into 13 pockets at a maximum speed of 1,560 documents per minute. The B 102 model has the ability to perform the same functions in an on-line mode as well. A standby station is provided to enable documents to be processed singly if desired. The B 102 is designed for operation with the B 251 (VRC) central processor. .122 B 103 and B 104 Sorter-Readers The B103 Sorter-Reader is also capable of speeds up to 1,560 documents per minute over a 13- pocket selection area, but it adds the provision for an endorsing station instead of the standby station. As a result, the flow mode is the only possible mode of operation. TheB 103 model is available with every B 100/200/300 Series Central Processor. A special Start-Stop Bar is optionally available with this model, providing the operator with immediate access to the controls along the entire extent of the pocket-select area. The B 104 is the same model as the B 103, except that no endorser can be attached. .123 B 106 and B 107 Sorter-Readers The Burroughs 13-pocket Sorter-.Reader is offered with a slower peak rate of 1,200 documents per minute as the B 106 and B 107 models. Originally designed for use with the economy B 100 Series of central processors, the B 106 and B 107 are currently available for use with any level of central processor in B 100/200/300 Series. The B 106 Sorter-Reader is provided with an item standby station in place of the B 107's endorsing station. .124 B 116 Sorter-Reader The B 116 model represents an enlarged version of the Sorter-Readers listed above. Three more distribution pockets have been added, thereby reducing the number of passes required to complete many sorting operations. The 16-pocket SorterReader also operates at a peak speed of 1,560 , documents per minute while printing endorsements on the reverse side of every item. The 16th pocket has a capacity of 2,000 items, as compared with the standard 800-item capacity. When the . number of documents in any pocket reaches a programmed tally point, an indicator can be lit above . that pocket and the system halted. Special features include the full-length Start/Stop Bar and a powerdriven transport area cover. The B 116 SorterReader is designed for use with the B 300 Series Central Processor when a 16-Pocket Control Module js attached. It is also currently available with every level of central processor in the B 100/200/300 Series except the B 100 line; the 16-Pocket Control Module must be added to the central processor in every case. 201: 103.100 Burroughs B 100/200/300 Series Input-Output Data Communications System INPUT-OUTPUT: DATA COMMUNICATIONS SYSTEM .1 GENERAL . 11 Identity: .•••••.••• B 450 Disk File and Data Comm unications Basic Control. B 248 Data Communications Control Unit. B 481 Teletype Terminal Unit. B 483 Typewriter Terminal Unit. B 493 Typewriter Inquiry Station. B 484 Dial TWX Terminal. B 486 Central Terminal. . 12 Description The Burroughs B 450 Disk File and Data Communications Basic Control Unit houses the B 247 Disk File Control (Section 201:042) and the B 248 Data Communications Control. It is available for use with the B 200/300 Series 6-microsecond central processor only. The B 248 Data Communications Control Unit provides the interface between the Central Processor and 1 to 15 terminal units which are capable of handling a variety of inquiry traffic requirements. Up to four B 248 Control Units can be attached to a system - one for every on-line central processor. The B 248 can be located up to 50 feet from the Processor, and is under control of the Processor only while loading or unloading a terminal unit buffer. The nominal data transfer rate between a terminal unit buffer and the Processor core storage is 30,000 characters per second. The principal functions performed by the B 248 Data Communications Control are: • Selection and connection of from 1 to 15 Teletype, Typewriter, Dial TWX, or Central Telephone Terminal units, in any combination. • Determination of "ready" status of any of the attached t.erminal units within 20 microseconds. • Generation of a Processor "interrupt" signal when a selected terminal unit is ready to supply input data or receive output data from the Processor. • Translation between Burroughs Common Language (BCL) code and Baudot 5-level or ASCII 8-level code. The B 481 Teletype Terminal Unit is a Teletype Model 28 Sequential Selector with selective calling features, which provides the interface between the B 248 and a network of teletype stations. The B 481 provides buffer storage and performs serial-to-parallel (input) and parallel-to-serial (output) conversions of the teletype character codes. From 1 to 399 teletype stations can be serviced by a single terminal unit, allOWing a total of 5,985 teletype stations in the network if only teletype terminals are used. Each B 481 can service only one teletype station at a time. The B 481 has a buffer storage capacity of either 120 or 240 characters; access time is 20 microseconds. A character control device provides for the insertion and deletion of special teletype control characters and station disconnect signals. An optional Teletype Page Printer can be included as part of the B 481 Terminal Unit and used to monitor all messages on the network . The B 483 Typewriter Terminal Unit provides facilities for connecting from 1 to 8 Typewriter Inquiry Stations to the communications system. The unit contains an input buffer which is capable of storing simultaneous inputs of 60 characters from each of 8 inquiry stations. An input scanning device accepts data as it becomes available (a character at a time) from any of the 8 stations, and directs it to the proper portion of the buffer. An interrupt and latch facility holds the input buffer to a station while data is transferred through the B 248 Data Communications Control . to the Central Processor. The input buffer is also utilized as an output buffer ,and stores reply messages from the Processor under control of timing signals generated in the terminal unit. Output buffer readout to the Typewriter Inquiry Station is also under control of the terminal unit. The B 493 Typewriter Inquiry Station utilizes a Teletype Send-Receive Paper Printer set. It communicates with the B 483 Terminal Unit via a multiple-conductor cable which can be up to 1 mile long, and it can be used for input and output of alphameric data at up to 10 characters per second. The B 484 Dial TWX Terminal Unit provides the facilities required to use stations of the Dial TWX network as inquiry and transmission devices. The B 484 unit contains 480 positions of input-output buffering that can accept messages from up to eight stations of the Dial TWX network simultaneously. The buffer size can be segmented into groups of 60, 120, 240, or 480 positions, depending on the number of channels to be utilized - 8, 4, 2, or 1. A Model 103A Data-Phone subset must be used as an interface between each channel and the TWX network. Normal telephone dialing procedures are followed in establishing contact between one of © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 '201:103,120 . 12 Description (Contd.) the eight channels and each Terminal Unit. If it is not desired to provide each channel with its own number, a sequential calling device is available from the telephone company. This device connects the caller to the next available input-output channel, rather than directing him to a specific path. With this arrangement, the caller will receive a busy signal only if all of the buffered channels are unavailable. After a connection between a TWX station and the B 484 Terminal Unit has been established, the operator types an input message on the Dial TWX statiOn keyboard, using a Model 33 or 35 Teletypewriter unit. The message is transmitted and loaded into the Terminal Unit's buffer as it is keyed in. After the message has been processed, the Terminal Unit sends the central processor's response to the awaiting channel. Until the station has received the "disconnect code," it can continue to communicate with the processing center. The B 484 Terminal Unit can accept messages larger than the buffer size established for each channel, but only one such message can be accepted at anyone time. All input-output-Plessages controlled by the Dial TWX Terminal Unit can be monitored by connecting a B 493 Typewriter Inquiry Station to the Terminal Unit. When the monitor station is disconnected, the typewriter can be used in its normal manner. The B 486 Central Terminal Unit serves as an interface between the central processor and up to 96 Burroughs On-line Teller Consoles. Each branch of a bank can communicate with the main office through its Teller Consoles and normal telephone lines. Up to eight Teller Consoles can be controlled by a Remote Terminal Unit. The Remote Terminal Unit in each office monitors the input-output status of all local Teller Consoles, converts and checks information being transmitted to and from the processing center, and initiates all message and reply transmission. A Model 202D Data-Phone subset is required in each office for every Remote Terminal Unit used, to convert BURROUGHS B 100/200/300 SERIES that unit's signals into a form acceptable for telephone-line transmission. A central office bridge, available from the telephone company, can connect up to nine lines from several different offices into one transmission channel in order to maximize the use of the six communication channels available in each Central Terminal Unit. The Central Terminal Unit at the processing center controls six communications input-output channels. Each channel can control up to 16 Teller Consoles, providing a maximum of 96 Consoles for each Central Terminal Unit. If the input messages have been sent via Data:"Phone subsets, they must be reconverted to signals acceptable to the Central Terminal Unit by DataPhone subsets at the processing center. The Central Terminal Unit accepts and stores mes-, sages until the central processor is ready to process them. Replies can be sent back to the originating Teller Console through the Central Terminal Unit according to a channel-queueing discipline established by the B 248 Data Communications Control Unit. Burroughs estimates that the average transaction time for its On-line Teller System is 8 seconds. To achieve and maintain that rate requires that no more than 1,000 transactions per channel, or 62 per Teller Console, be processed every hour. The B 200/300 Operating System I has been announced for use with the On-line Teller System. Program library calls and operator interrupts can be controlled by the Operating System, but no provisions have been included for the automatic control of all input-output demands on the central processor. First delivery of Burroughs data communications equipment occurred in November, 1964. The Online Teller System was first installed during the second quarter of 1965. / 6/65 201:111.100' Burroughs B 100/200/300 Series Simultaneous Operations SIMU L T ANEOUS OPERATIONS Buffer storage facilities are the same for each of the B 100/200/300 Series Systems. These facilities include two input buffers and one output buffer in the central processor, as well as local buffers in the printer, tape lister, and data communications terminal units. The assignment of the processor buffers is as follows: • Input Buffer 1 - card reader or paper tape reader. • Input Buffer 2 - card reader, paper tape reader or MICR sorter-reader. • Output Buffer - card punch or paper tape punch. The use of the various buffers permits several input-output operations to take place simultaneously while internal processing proceeds unhindered (except during the short periods required to load and unload the buffers). For example, as many as nine input-output units can be operating during computation (two card readers, one card punch, three tape listers, and up to three data communications devices). The maximum number of peripheral units that can be connected to each of the central processors is listed on Page 201:031. OIl. Two line printers can be used (with all but the VRC System) if a special dual-printer module is added to one of the printers. Two tape listers can be used as alternatives to the line printers, but a combination of one printer and one lister is not allowed. Both printing and paper advance operations can occur on the line printer(s) or tape lister(s), in parallel with other operations. The B 401 Record Processor is used only in the VRC System, and its data transfer operations are not buffered. However, forms and ledger card movements can occur independently. In a similar manner, magnetic tape read and write operations cannot occur in parallel with any other operation, but up to six simultaneous tape rewind operations are permitted. Disk File read and write operations are not overlapped, so the processor is locked out for an average of 20 milliseconds rotational delay plus the full data transfer time (at 100,000 characters per second) for each read or write instruction. The processor can, however, be released during programmed read-backs to check for Disk File recording errors. Multiple data communications operations can occur in parallel with other operations because of buffer facilities in the following units: • B 481 Teletype Terminal Unit - one buffer of 120 or 240 characters capacity. • B 483 Typewriter Terminal Unit - eight 60-character input-output buffers. • B 484 Dial TWX Terminal Unit - eight 60-character input-output buffers. • B 486 Central Terminal Unit - twelve 86-character input-output buffers. To summarize, the following operations are mutually exclusive; i. e., only one operation from this group can be performed at a time: • Internal processing. • Magnetic tape reading or writing. • Disk File reading, writing, or rotational delay. • B 401 Record Processor data transfer operations. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201: 121.100 Burroughs B 100/200/300 Series Instruction list INSTRUCTION LIST These instructions are common to all B 100/200/300 Series systems. INSTRUCTION Op. M N A B C 1 2 3 4 M M M M N N N N A A A B B B B C C C C 5 0 N A B C 5 1 N A B C 5 2 N A B C 5 4 N A B C 5 5 N A B C 5 6 N A B C 6 0 A B C 6 b 1 A 9 M N 7 M M N N B C C B C 8 If A A A N @ A A M N B M N A " .. If 4 B A Arithmetic A + B - C,B, or A. M, N specify length of operands. A - B ~ C, B, or A. M, N specify length of operands. A x 13 - C. M, N specify length of operands. A -<- B _ C. M, N specify length of operands. Logic Compare A to B alphameric, branch to C if equal. N specifies field length. Compare A to B, zone bits only, branch to C if equal. N specifies field length. Compare A to B, numeric, branch to C if equal •.. N specifies field length. Compare A to B alphameric, branch to C if unequal. N specifies field length. Compare A to B, zone bits only, branch to C if unequal. N specifies field length. Compare A to B, numeric, branch to C if unequal. N specifies field length. Jump to A, B, or C depending on low, equal, or high com-, parison indicators. Jump to A. No operation; proceed to next instruction in sequence. Halt after all operations in progress have been executed. Opcode, M, N displayed on console. Data Transfer Transfer M fields, N char starting at A to C. Transfer M char starting at A to C thru mask starting at B. In:Qut-OutEut; Punch Cards Transfer contents of card buffer specified by N to storage starting at C and read 1 card to buffer or go to B if End of File. Transfer 80 char from storage starting at A to punch buffer and punch 1 card. In:Qut-OutEut; Printer and Lister Transfer 120 char to print buffer for printer (or 44 char for lister) starting at A. Print lline with spacing specified by M or skipping specified by N. For lister, M specifies lister and N specifies tape number. B specifies branch addres s if end of page (printer) or out of paper (lister). Space or skip without printing on printer or lister, specified by M and N. B specifies branch address if end of page (printer) or out of paper (lister). B \ \ OPERATION C B © In:Qut-Out:Qut; Sorter-Reader Transfer all fields from Sorter-Reader document to core storage starting at C, in flow mode. A, B are branch addresses. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 BURROUGHS B 100/200/300 SERIES 201: 121.200 INSTRUCTION N A B C # 5 A B C # 6 A B Gp. .2 M N N C C 0 C C C C 4 7 N D 1 N A B C D 2 N A B C D 3 N A B D D 4 N N 2 6 8 5 N N OPERATION Transfer char thru transit field only from Sorter-Reader document to core storage at C, in flow mode. A, Bare branch addresses. Transfer all fields from Sorter-Reader document to buffer, in flow mode. A, B are branch addresses. Pocket select in Sorter-Reader. Pocket set by N. Demand feed and pocket select in Sorter-Reader. Pocket set by N. stop flow mode in Sorter-Reader; select pocket set by N. Start flow mode in Sorter-Reader; select pocket set by N. Increase batch counter by 1 (B 103 and B 116 only). Start buffered flow and pocket select. Pocket set by N. In:eut-Out:eut; M~etic Ta:ee Read one block forward on unit N to storage starting at C. A, B are branch addresses. Write one block on unit N from storage starting at A. B, C are branch addresses. Erase one block on unit N from storage starting at A. B is branch address. Backspace one block on unit N. Rewind unit N. These instructions, and instruction modifications, are common to all systems except VRC. INSTnUCTION Op. M E M F M NAB F 4 N F & N F 8 NBC NAB ABC C B C A J P M N A 9 M N A OPERATION C In:eut-Out:eut; Paper Ta:ee Transfer 80 characters from storage starting at A to output' buffer and punch paper tape. B, C are branch addresses. Punching insiructions are indicated by M. Transfer characters (buffered or unbuffered) from paper tape unit N into C. A, B, are branch addresses. M indicates buffered or not. Space paper tape forward on unit N to next control code .. 'B is, branch on End-of-Tape address. . .,~ '.. Space paper tape backward on unit N to next control code.' ' C is branch on Beginning-of-Tape address. Rewind paper tape on unit N. B, C are branch addresses. Address Modification Modify one 3-character address, specified by B, by the quantity stored in A. B C -Data Transfer Transfer zone bits of characters from A to C. M selects number of words; N selects number of characters. LogiC Halt after all operations in progress have been executed. Opcode, M, N, and A are displayed on console. If the 2 bit of the M variant is on, a branch to the address specified by A occurs after the system is restarted. B 103 or B 116 Sorter-Reader pocket indicators are lit as specified by N. ,/ (Contd.) 6/65 201: 121.300 INSTRUCTION LIST .3 These instructions pertain only to the VRC System. INSTRUCTION Op. M NAB C G M N C 1 NAB C 2 NAB C 3 NAB C 4 5 8 N 0 A C C C G G H 9 o 1 NAB C H 1 NAB C OPERATION Input-Output; Record Processor Select hopper and read magnetic stripe on record into core storage starting at C. N selects feed or feed and read where applicable. M operation primary feed N function as above N Spacing Spacing suppressed. Form A only. Form B only. Forms A and B. Record only. Form A and record. Form B and record. Forms A and B and record. 1 2 3 4 5 6 7 1 2 B N Restore Forms A and B. Single-space record and/or forms without printing. B is branch address. Spacing controlled by N as in table below. N 01 2 3 4 5 6 7 I 4 B branch stripe read address control branch stripe read as above manual feed address control branch stripe read auxiliary feed as above address control optical reader N/ A N/ A N/ A R. P. keyboard select lamp N/ A N/ A Eject record to primary stacker, write on stripe from storage starting at A. C is branch address. Eject record to auxiliary stacker without writing. Print and single space on record and/or forms from storage, starting at A. Spacing controlled by N as shown below. B, C are branch addresses. Print and single space on forms only from storage, starting at A. Spacing controlled by N as shown below. B, C are branch addresses. 0- I I A Spacing Spacing suppressed. Form A only. Form B only. Forms A and B. Record only. Form A and record. Form B and record. Forms A and B and record. Align record to line specified by information in core storage starting at A. A , i \ © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 BURROUGHS B 100/200/300 SERIES 201: 121.400 .4 These instructions, and instruction modifications, are available in the B 200/300 Series 6-microsecond central processor. INSTRUCTION Op. M NAB C 8 M NAB C # M B C @ M A M Q 1 Q 2 B C D 8 NAB C D 9 NAB C D 10 NAB C K o NAB C K 2 NAB C K 4 N C K 8 L 1 NAB L 2 NBC L 4 NAB N A NAB C A A ABC C OPERATION Date Transfer Transfer M characters starting at A to C. thru mask starting at B. N = 0: standard mask (fiscal). N = 1: inverted mask (fiscal). N = 2: alphameric mask. Input-Output; Punched Cards Transfer contents of card buffer specified by N to storage starting at C and read 1 card to buffer, or go to B if Endof-File. M = halt or branch on Not Ready condition. Transfer 80 characters from storage starting at A to punch buffer and punch 1 card. M = BCL, Bull, or ICT code designation. Input-Output; Lister Transfer 44 char to buffer from memory starting at A. Print 1 line on lister speCified by M and tape specified by N. B specifies branch address on out-of-paper. C specifies a print-error branch. Input-Output; Supervisory Printer Print on supervisory printer starting at A. Continue until group mark is encountered. Read from supervisory printer into storage locations starting at C. B is branch address upon end of input message. Input-Output; Magnetic Tape Write one record on unit N starting at A and continuing to end of storage. Band C are branch addresses. . Read one binary record on unit N into storage beginning at C. A and B are branch addres ses . Write one binary record on unit N starting at A and continuing to end of storage. Band C are branch addresses. Input-Output; Disk File Write N segments on disk file starting at A from processor storage locations starting at B. C is branch on "Not Ready" address. Read N segments from disk file starting at A into storage starting at B. C is branch on "Not Ready" address. Transfer the addressing word at A to disk file control, release the central processor, and read N segments for read errors. rD.terrogate disk file and branch on "Busy," error, "Write Lockout," or invalid address. Input-Output; Data Communications Interrogate inquiry ready on unit N. A, C, are branch addresses. B is store address on terminal unit. Transfer contents of terminal unit N buffer to processor storage starting at C. B is branch address. Transfer to terminal unit N buffer data from processor storage starting at A. B is branch address. (Contd.) 6/65 201: 121 500. INSTRUCTION LIST .5 These instructions, except those marked with asterisks, are available in the B 300 Series. central processors only. Asterisks denote those instructions that can also be obtained on the B 200 Series 6'-microsecond central processor through field or factory modifications. Op. INSTRUCTION M NAB C NAB C M U N A A * @ M N A M NAB B M N C M N R M·N * 7 * P * C B A C M NAB C M NAB C ABC N ABC M Input-Output; Punch Cards Transfer contents of card buffer specified by N to storage starting at C, and one card to buffer if Mis 0 or 1. Go to B if End-of-File, and go to A if reader is busy or not ready when M is 1. A 2 in M reads the binary card image into storage starting at A. Transfer 160 characters from storage starting at A and punch the binary image in one card. Transfer 80 characters from storage starting at A to punch buffer and punch one card. M designates punching in BCL, BULL, or ICT code. N determines stacker selection with B 304. Input-Output; Lister Transfer 44 characters to buffer from memory starting at A. Print chars 1-22 on master lister and tape designated by M;· print chars 23-44 on lister and tape designated by N. B specifies branch address on out-of-paper.C specifies a print-error branch. Space, skip, or slew master lister. as specified by M, and any designated non-master lister and tape as specified by N. Input-Output; Sorter-Reader Pocket select in sorter. Pockets 1-16 are selected by N. M determines starting, stopping, or maintaining demand or flow mode of sorter operation. M T OPERATION NAB C Data Transfer Transfer M fields and N characters from storage starting at A, translate the characters to any 6- or 12-bit code, and store the result starting at C. Transfer M fields and N characters from lJlemory starting at A to memory starting at C, and go to location specified by B if a "B" bit is over M. Transfer zone bits of characters from memory. starting at A to memory starting at C, and go to location specified by B if a "B" bit is over M. M and N specify the size of the transfer. Compress a field of numeric data starting at the memory location specified by A and store the packed data starting at the address specified by C. The size of the field to be compressed is expres sed by B. Expand a field of numeric data compressed in storage beginning at the addref!s specified by A and store the expanded digits starting at the address specified by C. The size of the expanded record is specified by B. Unit Interrogate Interrogate the input-output unit designated by M and N, and go to memory location specified by A, B, or C if the unit is busy, not ready, or in an error state, respectively. \ "'-.. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201 :131.100 Burroughs B 100/200/300 Series Coding Forms Assembly Languages CODING FORMS: ASSEMBLY LANGUAGES .1 BASIC ASSEMBLY LANGUAGE (B 100/200/300 Series Systems) 0, D . M N 1 2 ,• " It 12 I . . • ,. • A 3 a ADDIUS ADDIlISS , • C 9 6 I , 14 IS 16 17 ,.:" ADDU" I ,AGI CONSTANTS I REMARKS LINE. SIl! I 2021 22 23 2' 2S I I . , •• 29 3031 I a 1 2 3 4 5 67 8 9 T E n 3::1 3.. 3! 36 37 3139 40 4' 4243 .... " 56 ., " " ,. I 2 I . I , i I , I i I . i I J 0 4 0 S 0 6 0 7 I 4, I • IVM.OL.IC L.A.IIL. OP VARIAN' CODII MIN 7.1101111 13 141S Ie 17 011 011 ulllle OIJ II I2U 24 ZllIe I _lENT. I I I I I I I I 1 I I I I I J I I I I I I I I I I I I I I I I I I 1 1 I L I I CHAR. .neo 11I1I2n 15458 !II !l7151 01.0 It 112 I I I I 42411144 114'474' I II I T•• I 071 I Z7ulu 1031 !1 UUUUS7U ,,4041 C ADDRIISS CHAR. I I I I _lENT. I I .1 • ADDRIU' TA. CHAR. D E G H I 0 I I L I 2 M K / I oil 0-1 10J IIJ III tjENT I I 041 011 oil A ADDRII •• fA. 8 C 9 ADVANCED ASSEMBLY LANGUAGE (B 200/300 Series Systems) 1L.lr NO. r A 0 I I i .2 0 0 8 i I • 787910 I REMARKS U U!e'I'" ''''''oJ71 71t1J 7411117117 7ulilel . I i I i .i 6/65 201:141.100 Burroughs B 100/200/300 Series Data Code ' Internal, Printer, ,Lister, Sorter-Reader, Disk File DATA CODE: INTERNAL, PRINTER, LISTER, SORTER-READER, DISK FILE, ' .23 Character Codes LESS SIGNIFICANT PATTERN 0 16 32 _3 0 A B C 0 BLANK J I 0 1 2 3 4 5 6 7 8 9 11 @5 12 13 14 15 ? :6 >1 < $1 ; K L M N 0 P Q R $ W & *- Jci ( ) = D E F G H #4 ~ 48 +2 0 1 2 3 4 5 6 7 8 9 10 Notes: 1. 2. 3. 4. 5. 6. 7. © MORE SIGNIFICANT PATTERN [ ~ S T U V X y Z , F ..] Group mark in storage; printed as-. Printed as +. Printed as x. Code for MICR amount symbol. Code for MICR transit number symbol. Code for' MICR on us symbol. Code for MICR dash symbol. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201 :142.100 Burroughs B 100/200/300 Series DatI! Cqde Alphameric Card DATA CODE: ALPHAMERIC CARD .1 USE OF CODE: •••.• Alphameric Card Code. .2 STRUCTURE OF CODE .23 Character Codes OVER PUNCH UNDERPUNCH .21 Character Size: . . . . . 1 column. 12 11 & - 0 1 2 3 4 + x A 5 E F None None 12 0 11 0 1 2 3 4 5 6 7 8 9 8-2 8-3 8-4 8-5 IS-O 8-7 6/65 6 7 8 9 e'IQj" ' : >. .~ J K / B C L M T U V W X y D G '. H I. N 0 P Q R . !Ii' [ ... J ) < +-- S 'L, l' I -.19 - J ~ " 201: 143.100 Burroughs B 100/200/300 Series Data Code Magnetic Tape DATA CODE: MAGNETIC TAPE .1 USE OF CODE: . • . • . Magnetic Tape. .2 STRUCTURE OF CODE .21 Character Size:. . • .22 Character Structure .221 More significant pattern: . . . . . 222 Less significant pattern: • . • • 6 bits + even parity bit. . 2 bits; 16, 32. • 4 bits; I, 2, 4, 8. • 23 Character Codes LESS SIGNIFICANT PATTERN 0 1 2 3 4 5 6 7 8 9 10 MORE SIGNIFICANT PATTERN 48 0 16 32 '! Blank & 1 A / J 2 S K B C 3 T L 4 M D U E V N 5 6 W 0 F X P G 7 Y H 8 Q z R I 9 0 CR + -# 11 'IF , $ 12 13 @ % - *) .. .;; ~ 15 : > *1 [ ( < Note 2 Notes: 1. Tape mark. 2. Group mark in core storage. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201 :144.100 Burroughs B 1001200/300 Series Data Code . Record Processor DATA CODE: RECORD PROCESSOR .1 USE OF CODE: . . . . . B 401 Record Processor. .2 STRUCTURE OF CODE .21 Character Size: . . • . . 4 bits + even parity bit . . 22 Character Structure .221 . More significant pattern: . . . . . . . . none. .222 Less significant pattern: . . . . . . " 4bi1!:s; 1,2,4,8. .23 Character Codes PATTERN 0 1 2 3 4 5 6 7 8 9 SYMBOL 0 1 2 3 4 5 6 7 8 9 10 11 6/65 ) 201:145.100 Burroughs a 100/200/30D Serie~ Data Code Paper Tape ..' .. DATA CODE: PAPER TAPE •1 USE OF CODE: .••.. B 141 Paper Tape Reader and B 341 Paper Tape Punch. .2 STRUCTURE OF CODE . 21 Character Size: . . . . . 6 data tracks + 1 odd parity track + 1 track for endof-line symbol. .22 . . 23 Character Codes Less Significant Pattern 0 16 32 48 0 BLANK 0 - & 1 1 / J A 2 2 S K B 3 3 T L C 4 4 U M D 5 5 V N E 6 6 W a F 7 7 X P G 8 8 Y Q H 9 9 Z R I 10 : f x2 + 11 # , $ 12 @ % * [ 13 ?3 = ) ( 14 > 1 ; < 15 ~ " More Significant Pattern Character Structure .221 More significant pattern: . . . . . • . . . 2 zone bits; X = 32, 0=16. .222 Less significant pattern: . . . . . . . . . 4 numeric bits; 8, 4, 2, 1. Notes: © ~ Note 1 1. Tape feed code. 2. Multiplication sign. 3. Invalid code (as punched). 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201:146.100 Burroughs B 100/200/300 Series Data Code Collating Sequence DATA CODE: COLLATING SEQUENCE ,1 USE OF OODE. • . • .2 STRUCTURE OF CODE internal collating sequence. In ascending sequence: blank [ ( < + (group mark) & $ • "/ H I -0 J K L M N 0 p Q R / s T % = U V W X # Y @ Z 0 > ~, • (tape mark) +0 A B C D E F G 6/65 1 2 3 4 5 6 7 8 9 ? (invalid code) 201:151.100 Burroughs B 100/200/300 Series Problem Oriented Facilities PROBLEM ORIENTED FACILITIES .1 UTILITY ROUTINES .11 Simulators of Other Computers: . . . . . . . none. .12 Simulation by Other Computers blocked 10 records in and 14 out, using three 50KC tape units, within 34 minutes. In order to use this program, a B 200/300 6-microsecond central processor with 9,600 characters of core storage is required, in addition to three magnetic tape units and a line printer (any models). By Burroughs B 220 Disk File Sort Generator ill Reference: . . . . . . . . Burroughs Corporation. Date available: . . . . . January, 1961. Description: Reference: . . . . . . . . Record size: . . . . . . . Block size: . . . . . . . . Key size: . . . . . . . . . File size: . . . . . . . . . A general computer simulation of the B 200 Series equipment, including the Multiple Tape Listers, Sorter-Readers, and Record Processor, by using combinations of B 220 printers and magnetic tapes. Designed primarily to enable early B 200 Series users to test their programs on the earlier B 220 system, this simulator is no longer in use. .13 Data Sorting and Merging Sort Generator I Reference: . . . . . . . . Record size: ..• , ... Block size: . . . . . . . . Key size: . . . . . . . . . File size: . . . . . . . . . Number of tapes: . . . . Date available: . . . . . Description: URS-035. 600 characters max. 800 character max. 23 characters max. one reel. 3 to 6. May, 1963. Auto-load routines for magnetic tape sorting are produced and are claimed to be about 95% efficient. The generator can be run on either a card or tape system. It is a one-pass generator, and less than 5 minutes are required to generate a sort program. Operating instructions and complete documentation are printed, and a Restart Program is produced. Generalized Three- Tape Sort Reference: . . . . . . . . Record size: . . . . . . . Block size: . . . • . • . . Key size: . . . . . . . . . File size: . . . . . . . . . Number of tapes: ...• Date available: . . . . . Des cription: \ URS-043. I, 200 characters max. 1,200 characters max. 47 characters max. one reel. three .. April, 1964. Two specification cards containing the input-output parameters and sorting requirements are loaded with the object sort program. After about one minute of initialization operation, during which the best sorting techniques for the tape block length are selected, the multi-phase sort begins. Specification card editing is provided, but no provision is included for restarts once the actual sort has begun. With this program it is possible to sort 20,000 80character records with a sort key of 20 characters, © URS-053. 1,200 characters max. 1,920 characters max. 60 characters max. dependent on number of Disk File modules available. Input form: . . . . . . . . magnetic tape or Disk File. Output form: . . . . . . . magnetic tape or Disk File. Date available: . . . . . January, 1965. Description: Sort Generator III is designed to produce auto-load object sort programs that utilize a Burroughs Disk File for intermediate storage. Generation requires about six minutes and can be performed on a B 200/300 central processor with either 4,800 or 9,600 characters of core storage. In addition, at least one module of Disk File storage (9.6 . million characters) is required. The generated object program accepts records from either magnetic tape or Disk File and sorts them in about haIf the time required for tape sorts, according to the manufacturer. Two types of sort programs can be generated: record sorts or tag sorts. Tag sorting eliminates the need to process the entire data record during each sort phase by generating a short control record that corresponds to each data record, and then sorting the control records. During the final phase of the sort operation, the full records are drawn in sequence from input area storage and written on tape or another area in the Disk File. One module of Disk File storage provides enough intermediate storage to sort up to 84,000 80character records. Disk File Chained Records Sort Reference: . . . . . . . . URS-048. Date available: . . . . . January, 1965. Description: The Chained Records Sort program is designed to relocate Disk File records within a chain based on the activity of each record. At the conclusion of the sort, the Home location of each chain of records will contain the most active record; successive records in the chain will be arranged in the order of descending activity. Processing chained records arranged according to degree of activity will reduce the number of accesses required to find each record. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 BURROUGHS B 100/200/300 SERIES 201:151.130 • 13 Data Sorting and Merging (Contd.) • Reset Disk File - clears and resets speciHed areas to any preselected character. The Chained Records Sort program sorts each chain of records within either 4,800 or 9,600 characters of B 200/300 core storage. Magnetic tape units are not required. The user must insert his own randomizing formula into the program in order to direct the discovery of successive Home addresses prior to each chain sort. . 14 • Disk-to-Card - punches the contents of specified areas of the Disk File . Report Writing Revised Report Generator I • Tape-to-Disk - writes the contents of magnetic tape records onto specified areas of the Disk File. Direct addressing is used. Reference: . . . . . . . . URS-022, Tech. Bulletin 170R. Date available: ....• April, 1962. Description: • Disk-to-Tape - writes the contents of specified areas of the Disk File onto magnetic tape. This routine generates specially-tailored object programs that process input data from either punched cards or magnetic tape to produce reports on either punched cards or the on-line printer. The only required peripheral devices are a card reader, card punch, and printer; an optional magnetic tape version, however, reduces report program generation time to about 2. 5 minutes. An 80-card auto-load object program deck is produced by the one-pass generator. Facilities a~e pro~ided for controlling the printed format, for s1mulatmg listing and tabulation of up to seven running totals, and for maintaining up to four levels of totals. Each report produced by a generated object program includes a printed description of itself. Report Generator -IA performs functions similar to those of Report Generator I, except that the generated program is _produced in symbolic assembly language in order to facilitate any necessary pro~ gram patching. An additional pass for assembly' 1S therefore required in order to produce the machmelanguage object program. .15 • Card-to-Disk - writes the contents of punched cards onto specified areas of the DiE!k File, using indirect addressing. Data Transcription • Disk-to-Printer- prints the contents of specified areas of disk storage. • Disk-to-Disk - transfers information from one section of Disk File storage to another. .16 File Maintenance Magnetic Tape COpy/Verify Reference: . . . . . . . . DRS-031. Date available: . . . . . January, 1963. Description: The Magnetic Tape Copy/Verify Program provides a means of reproducing and/or verifying magnetic tape files. Reproduction is performed on a record image basis. Up to five control totals can be accumulated for each file being copied, in addition to a record count. The program will process either multiple-reel files or multiplefile reels. In the case of multiple-file reels, the files to be processed are selected by the user. Magnetic tape files can also be processe~ for establishing or verifying control totals WIthOut copying. Data Conversion Program Reference: • . . . . . . . URS-027. Date available: . . . . . March, 1963. Description: This program allows data to be converted, in image form, from one medium to another. Conversions which can be performed include card, paper tape, or magnetic tape input to any combination of card, paper tape, printer, and/or magnetic tape output. Anyone of 45 possible conversion operations may be selected. Disk File Utility Programs Reference: . . . . . . . . URS-047. Date available: . . . . . January, 1965. Description: The following programs are provided: Disk File Record Maintenance System Reference: . . . . . . . . URS-049. Date available: . . . . . February, 1965. Description: Three routines are provided for Disk File maintenance: • Record Load Routine - loads records onto the Disk File from punched cards. • Record Change Routine - changes selected portions of specified records. Input must be punched card, and random addressing is used. • Delete Record Routine - provides for deleting a specified record from the Disk File. Direct addressing is used. (Conte!. ) 6/65 201: 151.170 PROBLEM ORIENTED FACILITIES .17 Other Library of Demand Deposit Accounting Programs Reference: • • . . . . . . FAS-OOI through -13. Date available: .•.•• October, 1962. Description: This is a library of standard financial programs to assist in the preparation and installation of the Visible Record Computer (VRC) System. These programs are based on the MICR concept and direct item input. They are: , ',,- FAS-002; MICR Conversion: .•••.•... prepares customer ledger cards from magnetic ink characters encoded on documents prepared by the Burroughs P 703 Amount and Account Number Printer. FAS-003; Preliminary Proof: •••. performs the first sort and proving pass for documents that affect the demand deposit ledger. FAS-004; Secondary Proof: . . . • . . . . . . further proves all demand deposit documents and sorts them by ledger control. F AS-005; Sequence Check and Stop Pay Control: . • . . . . . . • assures that documents have been sorted according to ascending account number (and stated sequence). F AS-006; Daily Account Updating: . . . . posts the daily activity to the demand deposit ledger (may be last program used). FAS-007; Daily Reversal and Correction: • . • . • . . • • a) Daily reversal and correction - posts documents on a daily basis; b) File maintenance used on a weekly basis to adjust stored data on ledger card magnetic strips. FAS-OOS; Balance Transfer and Analysis: .••••••. processes the customer ledger cards for the last time during the accounting period. FAS-009; Balance Transfer and Analysis Correction: ••.....•.•• selectively processes customer ledger cards not processed in the preceding program. © FAS-OlO; Analysis .. ," History: . . . • . . . . . provides hard copy . record of analysis data. FAS:-Oll; Management Report: . . • . . . a) New and Closed Accounts - Significant Balance Changes - Large Transactions Report use documents and ledger cards as input. b) Daily Consolidated Control Report - uses ledger proof cards to obtain daily settlement figures. c) Monthly Consolidated Income Report -.:. run after Balance Transfer to provide analysis data in report form. FAS-012; Trial Balance: .•••..•.. provides a listing by account balance and number of all ledger cards in the ledger control. FAS-013; Ledger Card Preparation: .• uses punched cards which are punched directly from formats of the ledger cards to be prepared. Demand DepOSit/Proof and Transit Financial Application Package Reference: •••..••. Technical Bulletin 20022017. Date available: . . . . . August, 1964. Description: The Financial Application Package provides a set of 23 programs designed to process MlCR documents and their associated records from the proof and distribution of all items entering a banking institution to the updating of customer accounts. The package includes full documentation for each program. The programs are written in the Basic Assembly Language, and are designed for use with any B 100/200/300 Series tape-oriented central processor and 4 magnetic tape units of any model. A MICR sorter-reader, card reader, and line printer (any available models) are also required. The package includes the following programs: Counter Proof: ..•.. converts all deposit information to magnetic tape; segregates outgoing transit work; develops cash-in and cash-out totals for up to 15 branches or tellers. Transit: •••••••••. lists,. segregates, and totals outgoing transit work. Preliminary Proof: .• proves, lists,' and totals all checks drawn on the bank; writes all valid items onto magnetic tape. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201: 151.171 . 17 Q!illg: (Contd. ) Credit Tape Sort; Debit Tape Sort: •••.•.• sort the credit item magnetic tape created in Counter Proof and the debit item tape created in Preliminary Proof. Correct Credit Tape: • performs a preliminary file maintenance on the sorted credit item tape. Daily Transaction Merge: •••••••••. merges the sorted credit and debit tapes; develops control totals for audit trail purposes. Transaction Journal: • produces a printed listing of all items on the merged input tape; balances to control totals; lists separately any large transactions. Stop Pay/List Post: •• lists any items that have possible stop payment orders against them; produces a list of individual items to be posted to high activity accounts. Update: •••••••••. posts items from transaction tape to proper accounts on the tape master file; prints a complete trial balance report. Reversal and Correction: • • • • • • • • • corrects the master account file if necessary; reverses payment of items that are to be returned. Service Charge Analysis: .••••••. analyzes each type of account according to service charge rules; produces a tape to serve as an input to preparation of customers' statements. Merge Month-to-Date Transaction Tape: •• merges items on daily transaction tape with month-to-date items; writes all transactions for a cycled group of accounts on tape for monthly statement printing. Statement Preparation: prepares completely addressed customer statements with service charges applied. Report Programs Daily Referral Journal; New and Closed Accounts; Significant Balance Changes; Overdrafts; Unposted Transactions: •....••. produce 5 management reports from an exception item/account tape developed as an output to Update. BURROUGHS B 100/200/300 SERIES File Maintenance Programs Name and Address; Master File: ..•••. provide capability of keeping both magnetic tape files up to date. Conversion Programs Name and Address File; Master File: .....• convert account and name/ address information from punched cards to magnetic tape for use in this programming system. Installment Loan Financial Application Package Reference: . . . . . . • . FAS-015 Application Bulletin. Date available: .•.•• May, 1965. Description: The Installment Loan Package provides 9 documented programs that process loan payments through a MICR sorter-reader and apply them to the master file on magnetic tape. The package requires four magnetic tape units. a line printer, and any B 100/200/300 Series central processor, in addition to the sorter-reader. The programs inclUded in the package are listed as follows: Preliminary Proof: .. converts information from MICR loaD. payments to magnetic tape; separates items by type of account; prints a transaction journal with control totals. Daily File Maintenance:accepts any new loan accounts; processes all changes to loan master file on magnetic tape. Update: ••....•... processes daily transaction tape. and master file tape, applying all loan payments; prints a Daily Reference Journal; prepares an exception item/account output tape. Exception Report: •.. produces daily printed reports of zero balances, unposted payments, and payments over 15 days delinquent; other-thandaily reports include delinquent loans, new loans exceeding $5,000, weekly dealers' and weekly past due reports. Dealer Earnings or Employee Loan Report: .••.•.••• lists all bank employee loans and their status; lists the four high-volume dealers and shows earnings of each. Loan Classification or Dealer Loan Report:. lists all loans according to 10 classifications, shOWing totals and delinquencies; categoriz es loans by dealer, showing totals and delinquencies. (Contd. ) 6/65 PROBLEM ORIENTED FACILITIES I ~- . 17 201:151.172 Other (Contd.) Bond Analysis and Accounting Program Package - Customer Interest Report: •••••••.• prepares a form for each customer indicating his yearly loan interest paid for tax purposes. Loan History Report: . provides a monthly picture of the loan's history, including accl'llal information. Loan Conversion: .•.. converts initial loan acco-.mt information on punched cards to magnetic tape; develops conversiontotals for balancing. The Bond Accounting Package provides four programs capable of analyzing a bond portfolio file on punched cards and producing reports designed to assist the portfolio management in the evaluation of proposed and existing bond earnings. Program 1 projects the cash flow of future interest and maturity payments resulting from an existing bond portfolio. Program 2 calculates the effective rate of interest for bonds being considered for purchase. Amortization schedules for premiums or discounts of purchased bonds are developed by Program 3. The final program in the package computes various accounting entries for user-specified accounting periods for the entire bond portfolio. The Bond Analysis Package can operate with any B 200/300 6-microsecond central processor that has a card reader and line printer as peripheral devices. Management Science Series Reference: .•.•.. , . MSS-044, MSS-005, and MSS-006. Date available: .•... January, 1965. Des criptions: Loan Payment Schedular Program The Loan Payment Schedular Program develops a month-by-month schedule for any monthly-payment loan, showing the portions of each payment that are applied to interest and principal. The term of payment or the payment itself can be fixed: the program calculates whichever quantity is not specified. The Loan Payment Schedular Program functions with any B 200/300 6-microsecond central processor and any model card reader and line printer. Bank Customer Service Model This 3-phase program simulates the interaction between banking customers and specified facilities of the bank. Banking equipment configurations, both on-line and off-line, and tellers' schedules can be evaluated in terms of total customer service offered. By means of this program, proposed operations changes can be evaluated with respect to resulting customer service before any changes are actually put into effect. ! ( \ ',,-- The user of this program must provide as input the total number of customers expected for the day, the number and length of the periods in the day, and the distribution of the various customer transaction types. The user must also specify the number of tellers' windows available and the amount of time a typical customer demands in order to be completely serviced. The printed output shows simulated customers' movements through the bank, indicates waiting times and processing times, and lists the number of various types of customers serviced and the cumulative time for each type. In addition to the line printer required to produce this report, the computer system configuration required to run the program includes any B 100/200/300 Series tapeoriented central processor, two magnetic tape units, and a card reader (any model) . © On- Line Teller System Reference: . . . . . . . . Burroughs Corp. Date available: ....• January, 1965. ' Description: The On-Line Teller System is basically a special configuration of on-line and off-line banking-oriented hardware designed to permit direct -communications between tellers located in branch offices and a centrally-located data processing center. Burroughs has prepared good documentation on the overall OnLine Teller System, and has designed an input-output controller program to regulate all messages and replies to and from the processing center. The data communications equipment that functions as the data link between Burroughs Teller Consoles and the B 200/300 central processor is described in detail in Report Section 201:103. _ B 200/300 Flow Chart Generator Reference: . . . . . . . . Burroughs Corp. Date available: . . . . . June, 1965. Description: The Flow Chart Generator produces detailed logic flow charts, using standard symbols, for programs coded in either the Basic or Advanced Assembly Languages. The program provides numbered exit connectors with flow chart page numbers for ease of program logic tracing. The remarks-portion of each symbolic source statement appears within the statement's charted symbol, justified and hyphenated as required. The symbol also contains the mnemonic operation code for the statement represented by the symbol. Charting proceeds horizontally on the printed _output and includes all program segment headings and symbolic labels or references. Multiple-branch program switches are clearly charted. Any invalid or nonexistent exit points are checked and indicated as being in error. In order to use the Flow Chart Generator, an input tape must first be created during a Basic or Advanced Assembly operation. Equipment configura-'tion requirements include a B 200/300 Series 6microsecond central processor, three magnetic tape units. one card reader. and one line printer. in any available models. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201: 161.1 00 Burroughs B 100/200/300 Series Process Oriented Language Compact COBOL PROCESS ORIENTED LANGUAGE: COMPACT COBOL .1 GENERAL .11 Identity: •••••••••• B 200 Compact COBOL. • 12 Origin:' .••••••••• Burroughs Corporation. • 13 Reference: .•.••••. Compact COBOL for Burroughs B 270/B280 Series Systems, Utility Routine Series URS-052 • Description • 14 Compact COBOL is a subset of COBOL-61 that is designed primarily for use in small-scale computers. The standard language specifications for Compact COBOL used in this section are those published in the American Standards Association's X3.4 COBOL Information Bulletin #5 in October, 1964. (It should be noted that Compact COBOL has not been adopted as an American standard to date.)B 200 Compact COBOL incorporates most of the features of Compact COBOL listed in the ASA document. Some features of COBOL-61 which are not provided in the specifications for the Compact version have been included in B 200 Compact COBOL. These are listed below in the paragraphs headed "Restrictions" and "Extensions." The B 200 Compact COBOL Translator requires a B 273, B 283, or B 300 Central Processor with 4,800 positions of core storage, a card reader, a printer, and four magnetic tape units. A descriptionof the translator canbe found in Section 201:183. (6) The ADD and SUBTRACT verbs permit only two quantities to be added or subtracted. The words TO or GIVING must be used with these verbs . (7) The words TO or GIVING must be used with the verbs MULTIPLY and DIVIDE . (8) The DISPLAY and ACCEPT verbs cannot be ~ed. . (9) .143 Extensions of B 200 Compact COBOL with respect to ASA X3.4 CIB #5 (1) Data-names and procedure-names do not need to have an alphabetic as the first character. (2) Section-names are allowed. (3) The following figurative constants are allowed: ZEROS, ZEROES, SPACE, TAPE-MARK, and GROUP-MARK. (4) The SOURCE-COMPUTER and OBJECTCOMPUTER paragraphs of the Environment Division can have the MEMORY SIZE clause and can indicate the number of CARD READERS, LINE-PRINTERS, etc. .141 Availability Language specifications:. • • • • . . • • • • Burroughs B 200 Compact COBOL Programmed Instruction Course: June, 1964. Compiler: ••••••••• November, 1964. .142 Restrictions of B 200 com~act COBOL with Respect to ASA X3. 4 CIB, 5 . (1) Limits are placed upon the number of data-names and procedure-names used in a program. (2) The decimal point in numeric literals cannot be at the left end of a number. (3) There are no SPECIAL-NAMES or 1-0CONTROL paragraphs in the Environment Division. (4) (5) 6/65 The MULTIPLE REEL clause of the FILECONTROL entry is not permitted. The VAL UE 'OF clause of the File DeSCription entry is restricted to the use of non-numeric literals. The REEL option for the CLOSE verb is not allowed. . (5) Indentation is allowed in the Record Description entry of the Data Division. (6) In Record Descriptions, the SIZE, SIGNED, and CLASS clauses are permitted. (7) The phrase OTHERWISE (ELSE) is permitted in conditional statements. (8) The phases EQUALS and EXCEEDS are permitted in relation tests. (9) The EXAMINE verb with the REPLACING ALL option is provided. (10) Option 2 of the PERFORM verb (TIMES) is allowed. (11) An AT END OF REEL ciause is added to the WRITE verb. (12) The symbol j (semicolon) and the word THEN can be used as separators. (13) The word CHANNEL is reserved for spacing on the line printer. 201: 162.100 Burroughs B 100/200/300 Series Process Oriented Language Disk File COBOL PROCESS ORIENTED LANGUAGE: DISK FILE COBOL .1 GENERAL . 11 Identity: . . . . . . . .. B 200 Disk File COBOL . .12 Origin: . . . . . . . . . E. Saumets Associates (under contract to Burroughs Corp.) .13 Reference: .. . . . .. "Burroughs B 200 Disk File COBOL Compiler Description" (preliminary information) . .14 Description The B 200 Disk File COBOL Compiler will accept most of the language facilities of Required COBOL-61 and a number of the facilities of Elective COBOL-61. This new compiler is designed to take advantage of the fast-access, high-capacity storage provided by the Burroughs Disk File during both compilation and (when desired) object program execution. Equipment requirements for compilation are a B 200/300 6-microsecond central processor with 9, 600 positions of core storage, one module of Disk File storage, one magnetic tape unit, a card reader, and a printer. A card punch is also required if object program decks are to be produced on punched cards. Burroughs expects the compiler to use a total of 12 Disk File data tracks of 24,000 characters each. Although no detailed definition of the B 200 Disk File COBOL language is available to date, present indications are that it will include all of Required COBOL-61 except for the minor deficiencies listed in Paragraph. 142 below. Approximately ten of the elements of Elective COBOL-61 will be implemented, including the COMPUTE, ENTER, and USE verbs, the ADVANCING option of the WRITE verb, compound conditional statements, the I-O-CONTROL paragraph, and segmentation of the object program. The most significant extensions to the COBOL-61 language in B 200 Disk File COBOL are those provided to facilitate Disk File processing. A special File Description entry (type MD) permits the programmer to specify FILE-LIMITS, ACCESS MODE (SEQUENTIAL or RANDOM), and ACTUAL KEY, in addition to most of the entries in the type FD ' File Description entry used for files stored on sequential media. The OPEN verb can specify that a file will be used for both input and output. In the READ and WRITE verbs, a branch to any imperative statement can be executed upon detection of an invalid key. Sequential access to Disk File records will be provided automatically by the compiler. The programmer is responsible for file organization and layout, and for any indirect addressing techniques he chooses to use. The Disk File records can be © divided into header and trailer records, which can be physically separated from one another. No file may extend over more than one Disk File Storage Unit consisting of one B 472 and up to four additional B475 modules (a maximum of 48 million characters). Compilations can be performed in any of three modes: Compile and Go, Compile Deferred, and Compile stack. Compilation speeds of about 75 source-program cards per minute are antiCipated by the manufacturer on typical, "well-balanced" source programs. Burroughs expects the compiler to detect and flag all syntax errors in the Data and Procedure Divisions during the first compilation attempt unless a sentence contains more than one error; in this case only the first error encountered will be flagged during each compilation attempt. Error diagnostics will be interspersed among the lines of source coding in the source program listing. Data and procedure names can be up to 30 characters in length; in the absence of qualification, only the first 23 characters will be scanned to determine uniqueness. When data and procedure names average seven characters or less in length, it will be possible to store up to 600 unique names in the symbolic dictionaries. There are no limitations upon the total number of referenced data names nor on the number of Procedure Division literals. A maximum of 24 files can be described in anyone source program. A standard labelhandling technique is provided. .141 Availability Language: . . . . . . .. Compiler: . . . . . . " July, 1965. July, 1965. . 142 Deficiencies with Respect to Required COBOL-61 • TheSYNCHRONIZED and FLOAT DOLLAR SIGN clauses of the Record Description entry are not permitted. • No more than three nested levels are permitted in the OCCURS clause of the Record Description entry. • Only simple conditions can be specified in the UNTIL options of the PERFORM verb. . 143 Extensions to COBOL-61 • Features added to facilitate the use of mass storage include a special MD File Description entry and special options for the READ, WRITE, OPEN, CLOSE, and USE verbs; see the Description above. • A WRITE verb option permits branching to any imperative statement at the end of a page or reel of the output file medium. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201: 171.1 00 Burroughs B 100/200/300 Series Machine Oriented Language Basic Assembly Language MACHINE ORIENTED LANGUAGE: BASIC ASSEMBLY LANGUAGE REMARKS: . . . . . . • Columns 72-77: . . . . LINE: . . . . . . . • . • . coder's remarks. reserved for translator use. 3 digit input sequence number for lines of coding. .23 Corrections: . . • . .. use inserts in the LINE numbers and manual replacement. Description . 24 SpeCial Conventions This is a straightforward symbolic assembly language usable on any B 100/200/300 Series system that includes a card (or punched tape) reader and punch. Magnetic tape can be utilized when available to speed up the translation process and reduce card handling. The only unusual language features are those which are necessitated by the machine address digit radices of 12, 10, and 40. A special macro operation is provided to step an address by a chosen value. Pseudo-instructions are provided to control the allocation of storage. .241 Compound addresses: .242 Multi-addresses: .•• .1 GENERAL .11 Identity: B 100/200/300 Series Basic Assembly Language. . 12 Origin: . . . . . . Burroughs Corp. .13 Reference: Manual URS-O.41. . 14 The B 200 Series Basic Assembly Language offers less flexibility in label naming than most symbolic assembly systems. A two-character "page" field (used to assign coding sheet page numbers) and a one-character "reference symbol" together make up the three-character symbolic address of an instruction and/or data field. .15 Publication Date: . .. .2 LANGUAGE FORMAT .21 Diagram: .243 Literals: . . . . . . . . . 244 Special coded addresses: . . . . . . . .245 Other Axxx: xxxJ: xxxK: xxxL: Mxxx: August, 1961. refer to Assembly Language Coding Specimen, Page 201:131.100. .3 LABELS .31 General OP: M: ...••..•..•• N: A, B, C ADDRESS: •• PAGE: REF: SIZE: CONSTANTS: .•... 6 alphameric character program identification number. 3 alphabetic character mnemonic operation code. 2 alphameric character operation code variant. 2 alphameric character operation code variant. operand addresses, in 3 parts. 2 alphameric character coding sheet. optional 1 alphameric character line label. 3 digits; number of characters in a constant. 12 alphameric characters, for literals or data areas. bb*J is "This address plus 12" (b denotes blank). - in first column of an Address field indicates address of next instruction is to be inserted. address of xxx. address xxx+12. address xxx+24. address xxx+36. actual data to appear in machine coding. .311 Maximum number of labels - . 22 IDENT NO.: none. one per column; usually three addresses per line. * in first column of Address field plus literal in Constants field. .312 . 313 . 314 .315 .32 Procedures: . • . .. Constants: . . . . • . Items: . • . . • • • •• Common label formation rule: ..•••.• Reserved labels: •.. Other restrictions: • Designators Address value: .. . Absolute value: .. . Literal: • . . • . . . . 1,800 . 200. 1,800. yes. yes. see.315. initial letter A. initial letter M. * in col 14 and 18. Universal Labels .321 Labels for procedures Existence: ..•..• Formation rule: .. .322 Labels for library routines: .••.•.. . 323 Labels for constants: • 324 Labels for files: •.. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. mandatory. address of first statement. yes. address . none . 6/65 BURROUGHS B 100/200/300 SERIES 201: 171.325 .325 Labels for records: . none. .326 Labels for variables:. address. .. 33 Local Labels: .4 DATA . 41 Constants none. . 411 Maximum size constants: .••... .412 Maximum size literals: . . • . . . . .543 Label adjustment Set labels equal:. . Set absolute value: Clear label table: . .544 Annotation Comment phrase: . Title phrase: •... .545 Other End of program: .• 12 characters. .6 12 characters. .7 .5 PROCEDURES . 51 Direct Operation Codes . •:51~. Mnemonic . Existence: ••.... Number: •••.... Example: . . . . . . • Comment: •.•..• .512 .Absolute: ••...••. .52 .. . . . . . . .. . . . 2. . ... . LNK. none. ....... none. .53 Interludes: .54 Translator Control SPECIAL ROUTINES AVAILABLE: see Section 201:151. LIBRARY FACILITIES: none . .81 Macros Code LNK: AAR: .542 Allocation counter Set to absolute: SLC • Set to label: OVR. step forward: ALC . Step backward: SLC . Reserve area: • . . • CST. ... ..... . ... ... Description sets linkage for subroutines. steps an address value (by creating a linkage to a closed, 30-instruction address modification subroutine) . Pseudos Code SLC: ALC: •.•••.••. END: . . . • . . . . • OVR: ••......• " .541 Method of control Al~ocation counter: • pseudo. Label adjustment: •• none. Annotation: • . . • • • REMARKS columns END. MACRO AND PSEUDO TABLES . 82 .521 Number available Addressing: .522 Examples Simple: . 523 New macros: special columns. HDG pseudo. special box. .8 yes. 30 (VRC), 37 (B 260, B 270, B 280). 49 (B 263. B 273, B 283). or 58 (B 300). ADD. all 3 characters in size. none. Macro-Codes no. no. no. SAD: .....•••• HDG: CST: IGM: Description set allocation counter to absolute value . step allocation counter forward • end assembly. sets allocation counter to any value (absolute or symbolic) and assembles balance of first 4,800 characters in auto-load form with literals. permits M and N columns to be used together for a symbolic address. allows identification or ex- ", planatory remarks. defines I/O areas, working storage, constants, and masks. inserts a group mark character in core storage. ./ ./ 6/65 201: 172.100 Burroughs B 100/200/300 Series Machine Oriented Language Advanced Assembly Language MACHINE ORIENTED LANGUAGE: ADVANCED ASSEMBLY LANGUAGE .1 GENERAL · 11 Identity: . 12 Origin: · 13 Reference: · 14 Description • Furnished library subroutines include input-output error procedures and their linkages, as well as a debugging package of dumps, snapshots, and tracers . • Automatic.field-length definition is provided to facilitate the coding of all arithmetic, compare, data transfer, and editing commands. • Symbolic address incrementing by up to 999 characters is provided, in addition to entry incrementing and decrementing by up to 99 entries. • Symbol tables or cross-reference listings of labels can be provided if desired. . . . . . Advanced Assembler I. . . Burroughs Corp . Manual URS-044. Advanced Assembler I is an expanded version of the Burroughs Basic Assembler (see page 201:171.100). The principal features of this new assembly language include the capability to use up to 10,000 six-character name labels and the provision for use of a comprehensive and expandable library of program subroutines. The limited labelnaming facilities of the Basic Assembly Language have been further improved in the new version by the inclusion of up to 10,000 program point labels to complement the use of symbolic name labels. A fixed field-length coding form, similar to the IBM Symbolic Programming System (SPS) coding form, has been retained. Operand lengths need not be specified in every instruction. The size of the operand is specified once, in the Data Division section of the program. All subsequent references to the operand will then have the correct size inserted by the translator. The Advanced Assembler I translator requires a B 200/300 6-microsecond Central Processor and 3 magnetic tape units, in addition to a card reader, line printer, and card punch, in any models. If Disk File storage is available, only one magnetic tape unit is required for use in conjunction with. one Disk File storage module. Programs written in the Basic Assembly Language can also be assembled by the Advanced Assembler I in order to utilize the increased capabilities of the improved translator. See Section 201: 182 for further details about the Advanced Assembler I translator. The major improvements of the Advanced Assembler lover the B 200 Basic Assembler can be summar~ ized as follows: o Either Basic Assembler or Advanced Assembler I is acceptable as symboliclanguage input. • Up to 10,000 six-character symbolic name labels and 10,000 program point labels can be utilized. • Up to 100 program point labels of the same character are permitted within a program segment. • Up to 20 library subroutine call entries are permitted within a program segment. © . 15 Publication Date: . . . . May, 1964. .2 LANGUAGE FORMAT .21 Diagram: . . . . . . . . . refer to Assembly Language Coding Forin, page 201:131.100.- .22 Legend: Page: . . . . . . . . . . . 3-alphameric-character coding form sequence number. Line: . . . . . . . . . . . 3-alphameric-character entry sequence number; units position is used for insertions. Symbolic Label: . . . . 6-alphameric-character field or instruction name; or a decimal point .and a reusable _ alphabetic character program point marker. Op. Code: . . . . . . . . . 4-alphameric-character mnemonic operation code. Variant: . . . . . . • . . . 4-numeric-digit operatiori code modifier; for many commands it is separated into 2-digit M and N Variant modifiers; A, B, C address.: . . . . operand addresses, in 3 parts. Tag: . . . . . . . . . . . . 6-alphameric-character operand base address, in the form of labels, ± program points, self-addressing, machine language, or literals. Literals cannot be used in the calling string of library subroutines. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201:172.220 · 22 Legend (Contd.) ENT: .••••....... 1-character-sign and 2-numeric-digit Tag address entry-modifier. Entry modifications cannot be used with machine language coding or literals. Char: . • . • . . . . . . . . 3-alphameric-character increment factor added to the net address formed by the Tag and Entry modifier. Remarks: •.•....•. 24-alphameric-character field for coder's comments. • 23 Corrections .231 Insertions: •••..... use units position of line field as insert number and manually insert card. · 24 Special Conventions .241 Compound addresses: • Tab ± entry-modifier + character increment = address. • 242 Multi-address: •.... one per column, three per entry. ; 243 Literals: . • . . . . . . • from 1 to 6 characters in arithmetic, compare, and transfer commands. • 244 Special coded addresses: . . . . . . . ± alphabetic character indicates next instruction labeled with same character . • 245 Others *Xxxxx: ••••••••. address of instruction in which it appears. @XXX: •••••••••• actual data can be entered in machine l!!Jlguage. #xxxxxx:. . . . . . . . . literals. •3 LABELS .31 General . 311 Maximum number of labels: . • • . . . . . . . 10,000 universal and 10,000 local labels. .312 Common label formation rule: . . . . • . yes. .313 Reserved labels: .... none. • 314 Other restrictions: .•. see next entry. .315 DeSignators Symbolic name: • . . . initial character must be alphabetic. Program point: . . . . initial character must be a decimal point, followed by an alphabetic character • • 316 Synonyms permitted: . any symbolic name can be equated to any other prior name. BURROUGHS B 100/200/300 SERIES .32 Universal Labels .321 Labels for procedures Existence: •.•.... mandatory if referenced . by other instructions. Formation rule First character:. . . alphabetic. Other: . • . . . . . . . any alphameric characters. Number of characters: . . . . 1 to 6. · 322 Labels for library routines: . . . . . . . . none. .323 Labels for constants: • same as Procedures. .324 Labels for files: •... none. .325 Labels for records: .. same as Procedures. .326 Labels for variables: . same as Procedures. · 33 Local Labels .331 Region: . . . . . . . . . • local to the closest point of reference. · 332 Labels for procedures Existence: . . . . . . . mandatory if referenced by other instructions. Region: . . . . . • . . • local to the closest point of reference. Formation rule First character: ... decimal point • Last character: • . . alphabetic character. Number of characters: .•.. two. · 333 Labels for library routines: . . . . . . . . none. .334 Labels for constants: • same as Procedures. .335 Labels for files: .... none. .336 Labels for records: •• same as Procedures. .337 Labels for variables: . same as Procedures. .4 DATA .41 . Constants .411 Maximum size constants Numeric: . . . . . . . . 60 characters. Alphabetic: •..•.•. 60 characters . Alphameric: •..... 60 characters . . 412 Maximum size literals Numeric: . . . . . . . . 12.characters. Alphabetic: . . . . . . . 12 characters . AlphameriC: . . . . . . 12 characters. .42 Working Areas .421 Data layout Implied by use: .... Specified by program: . . . . . . . · 422 Data type: ••....•. .423 Redefinition: ....••. · 43 no • yes. not required. yes; EQU pseudo operation. Input-Output Areas .431 Data layout: . . . . . . . explicit layout. • 432 Data type: ....•.•. not required. · 433 Copy layout: . . . . . . . no provision. (Contd.) 6/65 201: ]72.500 MACHINE ORIENTED LANGUAGE: ADVANCED ASSEMBLY LANGUAGE \ '- .. .5 PROCEDURES .65 Input-Output Control .51 Direct Operation Codes .651 . 652 . 653 .654 .655 File labels: . . . . . • . Reel labels: . . . . . . . Blocking: . . . . . . . . . Error control: . . . . . Method of call: . . . . . • .66 Sorting: .67 Diagnostics .511 Mnemonic - Existence: .•.. Number: ... . Example: .. . Comment: ... . · .. yes; mandatory. · .. 58. . .. CRD. · .. all are 3 characters in size . • 512 Absolute: . . . . . . . . . none. .52 none. none . none . input-output operations. macros. . . . . . . no routines that can be embedded in a program. Macro-Codes .671 Dumps: .521 Number available Input-output: . . . . . . Arithmetic: . . . . . . Math functions: . . . . Error control: . . . . . Restarts: . . . . . . . . Program control: .. .522 Examples: . . . . . . . . .523 New macros: . . . . . . . .53 Interludes: . . . . .54 Translator Control . 5. none. none. contained within input output macros. none. 2. see Paragraph. 81 inserted into library in separate run. none. .541 Method of control Allocation counter: .. pseudo operations. Label adjustment: .. pseudo operations. Annotation: . . . . . . . coder's comments. .542 Allocation counter Set to absolute: .... SLC, OVR pseudos. Set to label: . . . . . . OVR pseudo. Step forward:. . ALC pseudo. Step backward:. . ... SLC pseudo. Reserve area: . . ... CST, RSV, pseudos. .543 Label adjustment Set labels equal: . . . . EQU pseudo. Set absolute value: .. EQU pseudo. Clear label table: ... none. .544 Annotation Comment phrase: ... HDG pseudo. Title phrase: . . . ... HEAD card. .6 SPECIAL ROUTINES AVAILABLE . 61 SpeCial Arithmetic: .. none . . 62 SpeCial Functions: .63 Overlay Control none . . OVR macro sets allocation counter to any value, absolute or symbolic, and assembles balance of first auto-load program deck to end of memory. . 632 Method of call: . . . . . OVR macro. . . . . . . . . . specified section of core storage is printed at object time by means of DUMP pseudo. DBUG control card removal negates all diagnostic pseudos. .672 Tracers: . . . . . • . . . traces all instructions following TRAC pseudo up to the address spec ified in the B address, in TRAC. DBUG pseudo is required for use of tracers • . 673 Snapshots: • . . . . . . . SNAP pseudo prints at object program time the symbolic name, machine address, and 120 characters starting with the address specified in the SNAP pseudo. Up to 9 addresses can be controlled by the SNAP and DBUG pseudos. .7 LIBRARY FACILITIES .71 Identity: · 72 Kinds of Libraries .721 Fixed master: · no. · 722 Expandable master: . · yes. · 723 Private: . . . . . . • . . · private facilities can be added to master library. .73 Storage Form: .74 Varieties of Contents: . macro instructions and their linkages, inputoutput error' routines, and subroutines for debugging . .75 Mechanism .631 Facilities: . . . . . . . 64 Data Editing .641 Radix conversion: ... none . . 642 Code translation: . . . . not required due to hardware code translation capability. . 643 Format control: . . . . not required due to hardware editing capabilities. · Advanced Assembler I System Library . . . . . tape (supplied on cards for transcription to tape). .751 Insertion of new item: . special library assembly run . . 752 Language of new item:. Advanced Assembler I. .753 Method of call: .••.. CALL pseudo with routine name in A address of entry, or any macro entry. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201: 172.760 BURROUGHS B 100/200/300 SERIES . 76 .761 .762 • 763 Insertion in Program Open routines exist: •. yes; user-defined macros. Closed routines exist: • yes . Open-closed is optional: •.•..... no . . 764 Closed routines appear once: ..•.• yes. ,8 MACRO AND PSEUDO TABLES . 81 Macros Description MTR: .82 . . , . . . . . . . . sets linkage to and calls in the magnetic tape read error routine; generates tape read instruction. MTW: .. , . • . . . . . . sets linkage to and calls in the magnetic tape write error routine; generates tape write instruction. DRD: , . . . , . . . . . . sets linkage to and calls in disk read error routine; generates disk read and interrogate commands. DWR: . . . , . . . . . . . sets linkage to and calls in disk write error routine; generates disk write and interrogate commands. DWC: ••.•...•... functions the same as DWR except that a disk check command and its linkage are also generated. LNK: ••....••... creates the necessary two- instruction linkage to and from a routine and branches to the routine. SET: • . . • . . . . • . . . functions the same as LNK except that no branch is taken. Pseudos Code Description SLe: .••.••...•.. sets location counter to a specified absolute or symbolic value. ALC: • . . . . . . . . . . sets location counter ahead by a specified number of fields and characters. EQU: . . . . . . . . . . . . symbolic name in label field is given the same absolute value as another speCified name or machine value. CST: •. . , . . . . . . . . loads a constant field up . to 60 characters in length; if more than 60 characters are specified, the balance will be reserved with blanks. 6/65 .82 Pseudos (Contd.) Code Description RSV: . . . . . . • . . . . . reserves a speCified number of characters in storage. HDG: . . . . . . . . . . . . generates coder's remarks on output listing . OVR: . . . . . . . . . . . . sets location counter to any value, absolute or symbolic, and causes overlaid routines to follow the main object program deck. SAD2: . . . . . . . . . . . generates a two-character machine address constant for each symbolic address specified. SAD3: . . . . . . . . • . . generates a three-character machine address constant for each symbolic address specified. LORG: . . . . . . . . . . . specifies that all literals following LORG be packed in an area of memory subsequent to the current setting of the location counter to prevent destruction by overlays. GPMK: . . . . . . . . . . generates a one-position group mark character. TPMK: . . . . . . generates a two-position constant consisting of end:"of-tape and group marks. CALL: . . . . . . . . . . . calls in a specified library routine for assembly at end of program. SUBR: . . . . . . . . . . . functions the same as CALL, but also functions within overlays. TEMP: . . . . . . . . . . inserts a temporary routine into the library for use in the program being assembled only. END: . . . . . . . terminates every temporary library routine and every program. FINI: . . . . . . . . . . . terminates any given . number of consecutive assembly operations. DBUG: . . . . . . . . . . . controls use of all DUMP, TRAC, and SNAP pseudo operations. DUMP: ••.......•. prints at object program time the contents of a specified section of core storage. . TRAC: . • . . . . . . . . selectively traces specified program areas at object program time. SNAP: . . . . . . • . . . prints symbolic name, machine address, and 120 characters of address speCified. 201 :181.100 Burroughs B 100/200/300 Series Program Translator Basic Assembler PROGRAM TRANSLATOR: BASIC ASSEMBLER .1 GENERAL · 11 Identity:.... · 12 Description B 100/200/300 Series Basic Assembler. _ Translation requires three passes and is limited in speed by the output equipment: a punch or magnetic tape unit. • 13 Originator:....... Burroughs Corp. .14 Maintainer: Burroughs Corp. .15 Availability: March, 1961. .2 INPUT · 21 Language .211 Name: ................... .212 Exemptions: . . . .... . \ Size Limitations: . . . .3 OUTPUT . 31 Object Program .41 Phases and Passes .42 Optional Modes .421 . 422 . 423 .424 .425 Translate: . . ........ . Translate and run: .. Check only: • • . . • . . Patching: ......... .. Updating: .......... .. . . yes . no. no. no . no . . 43 SEecial Features: ... none. . 44 Bulk Translating: . . . yes. .45 Program Diagnostics: none. . 46 Translator Library: . ·5 TRANSLATOR PERFORMANCE .51 Object Program Space punched cards or paper tape. in line sequence order. limited by hardware; maximum of 1,800 labels and 200 constants. .311 Language name: .312 Language style: .313 Output media: .......... Basic Assembly Language. machine code. auto-load card deck or tape; printer listing. .32 Conventions: none. .33 Documentation Subject Provision Source program Object program: Storage map: ......... Language errors: listing. listing. implied. listing. .. ... none. .511 Fixed overhead: . . .• none. .512 Space required for each input-output file: .. as coded. .513 Approximate expansion of procedures: ... unity. · 52 . 222 Obligatory ordering: . ( Burroughs Basic Assembly Language, described in Section 201: 171. none . Form .221 Input media: ........... . 23 TRANSLATING PROCEDURE Label table pass: .•. check op. codes, etc. Translate pass: . . . . assign addresses. Auto-load deck output: final output. This translator can be run on any B 100/200/300 Series configuration with a card or paper tape reader and punch. Listings can be provided if a printer is available. The translator can take advantage of any magnetic tapes available on the translating computer to speed up the translation process and reduce card handling. .22 ·4 Translation Time · 521 Normal translating: usually output limited. 5 minutes maximum on cards; 300 cards/niinute. 3 minutes maximum on tape; 700 instructions/minute. · 53 Optimizing Data: none. · 54 Object Program Performance: unaffected; i. e., same as hand coding • .6 COMPUTER CONFIGURATIONS .61 Translating Computer .611 Minimum configuration: . . . . . . . . . . .612 Larger configuration advantages: . . . . . • © 1965 AUERBACH Corporation .. and AUERBACH Info, Inc. 1 card or paper tape reader. 1 card or paper tape punch. 1 central proces sor . use printer for program listing .. use magnetic tape to speed up run and avoid card handling • 6/65 BURROUGHS B 100/200/300 SERIES 201: 181.620 . 62 Target Computer .7 .621 Minimum configuration: . . . . . . • . . . . 1 card or paper tape reader and 1 output device. Error Missing entries: Unsequenced entries: Duplicate names: Improper format: Target computer overflow: . 622 Usable extra facilities: all. .8 6/65 ERRORS, CHECKS, AND ACTION ALTERNATIVE TRANSLATORS:. .. Check or Interlock none. check check check listing . listing. listing. check listing. Advanced Assembler I translates either Basic Assembly language or Advanced Assembly language programs. 201:182.100 Burroughs B 100/200/300 Series Program Translator Advanced Assembler I PROGRAM TRANSLATOR: ADVANCED ASSEMBLER I .1 GENERAL .11 Identity: .•••.•.•.. Advanced Assembler 1. • 12 Description The Advanced Assembler I translator is a multiphase tape or disk oriented program designed to translate relatively large source programs (including up to 10,000 symbolic labels) within 4,800 characters of core storage. The minimum requirements for the translation process include a B 200/300 6-microsecond Central Processor and either three magnetic tape units or one tape unit and one module of Disk File storage. The translator can accommodate programs written in either the Basic or Advanced Assembly Language and contained in card image form on either cards, paper tape, magnetic tape, or disk storage. A program listing and the machine-language autoload output are produced as desired on cards, printer, paper tape, and/or magnetic tape. The translator program itself is contained on magnetic tape. During the translation process, a mfuimum of 11 functionally-distinct phases are called in and performed. Resultant translation times fall between 75 and 150 entries per minute, depending upon the speed of the output equipment and the number of output options elected. All translator phase loadings and modifications are self-performed and require no monitor. .222 Obligatory ordering: .. must be in correct sequence according to coding sheet page and line numbers . .223 Obligatory grouping: .. none. · 23 .3 OUTPUT .31 Object Program .311 Language name: .•... Burroughs Common Language • . 312 Language style: . . . . . machine language. .313 Output media: . . . . . . punched cards, paper tape, or magnetic tape. . 32 · 33 .13 Originator: .••.... Burroughs Corp. .14 Maintainer: ••.•.•• Burroughs Corp. .15 Availability: ••.•••• October, 1964. •2 INPUT . 21 Language .211 Name: •••...•...• Advanced Assembly or Basic Assembly Language. .212 Exemptions: ...•.•. none. .22 ~ . 221 Input media: . . . . . . . card images on cards, paper tape, magnetic tape, or disk file. Conventions .321 Standard inclusions: .. input-output error routines. .322 Compatible with: . . . . Advanced Assembler Program Library. The Advanced Assembler I translator provides subroutine library facilities, automatic operand length definition, complete language error checking, entry and character adjustments to symbolic addresses, and cross-referenced symbol tables. The output program listing consists of the machinelanguage instruction and its location in core storage, the source coding, error messages derived from invalid or defective coding, all generated instructions and routines, and the location of each entry in the auto-load card deck. Size Limitations · 231 Maximum number of source statements: .• unlimited. .232 Maximum size of source statements: .. 80 characters. · 233 Maximum number of named data items: .. 10,000. .234 Maximum number of program point labels: 10,000. Documentation Subject Provision Source program: . . . . listing. Object program: . . . . listing. Storage map: . . . . . . implied. Restart point list: ... none. Language errors: . . . . messages on listing. Label table: . . . . . . . listing with crossreferencing. .4 TRANSLATING PROCEDURE .41 Phases and Passes Phase 1: .•••...•.. edits parameter card; calls in appropriate inputoutput routines . Phase 2: . . • . . . . . . . translates source language, assigns operation codes, and adds temporary library routines. Phase 3: .••••••••• calls in any necessary library routines; checks validity of operation codes and library routines. Phase 4: . • . • • . . . . . checks M and N variants; assigns machine-language equivalents. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 BURROUGHS B 100/200/300 SERIES 201: 182.410 .41 Phases and Passes (Contd.) Phase 5: ••••••.••• constructs literal table; packs literals into unused addresses of instructions. Phase 6: ••••.•.•.• writes labels and program points to tape; assigns machine addresses to instructions and constants. Phase 7: .•••...••. transfers addresses called for from library calling strings to library routine skeletons. Phase 8: .•••.....• assigns addresses to symbolic labels, flagging duplicate or unused labels. Phase 9: •••.•••.•. builds entry increment table; modifies machine• language addresses by entry increments. Phase 10: •••.•••.. assembles final machinelanguage instruction; performs any necessary character incrementation. Phase 11: . . . . . . . . • generates object-coded auto-load output; formats source'code for listings. Phase 12: •...••... produces symbolic listing on specified output media; develops label crossreference list • . Phase 13: •••••••.• sorts label table; calls in and modifies Phase 12 for outputting of edited labIe table or cross-· reference list. .42 Optional Mode .421 • 422 .423 .424 .425 Translate: .•••••.. yes. Translate and run:. . • no. Check only: ••••.... no. Patching: ••••••••• no. Updating: ••••••..• no. • 43 Special Features .431 Alter to check only: .• no. .432 Fast unoptimized translate: • • • • • . • • no. .433 Short translate on restricted program: • Phases 12 and 13 can be skipped if symbolic output is not desired. .44 Bulk Translating: ••• yes, but only When source programs are on punched cards. • 45 Program Diagnostics . 451 Tracers: .• . • . • . • • can be integJ;'ated into object program; removal of DB UG source card causes diagnostics to be ignored during subfrequent assemblies. . 452 Snapshots: ..•...•• same as in .451, above. . 453 Dumps: .••••..... same as in .451, above. .46 Translator Library: .• see Paragraph 201:172.7. .5 TRANS LA TOR PERFORMANCE .51 Object Program Space .511 Fixed overhead: . . . . . none. 6/65 .512 Space required for each input-output file: . . . . . . . . . . . • same as block length. .513 Approximate expansion of procedures: . . . . . one to one, exclusive of macros. .52 Translation Time .521 Normal translating: .• O. 013S minutes, reading source cards at 800 cpm and punching auto-load deck at 300 cpm, .where S is number of statements in source program. . 522 Checking only: . . . . . • none . .523 Unoptimized translating: •.••... none. . 53 Optimizing Data: .•.• none . .54 Object Program Performance: .•... unaffected by translation; i. e., same as hand coding. .6 COMPUTER CONFIGURATIONS .61 Translating Computer .611 Minimum configuration: B 200/300 6-microsecond Central Processor with 4,800 positions of core storage. 3 magnetic tape units (any model). 1 card reader (any model) . 1 card punch (B 303 or B 304). .612 Larger configuration advantages: .••.•.. additional core storage can reduce number of translator passes per phase by handling more labels per pass; any model line printer provides variety of output doculnentation . .62 Target Computer .621 Minimum configuration: . . . • • . . . . . no limitations. .622 Usable extra facilities: . • . . . . . . . . . everything except B 401 Record Processor with VRC systems. ERRORS, CHECKS, AND ACTION .7 Check or Error Interlock Action none • Missing entries: Unsequenced entries: check noted in listing . check Duplicate names: noted in listing. Improper format: noted in listing. check Incomplete entries: check! noted in listing. Target computer overflow: check noted in listing. Inconsistent program: none . Undefined names: check noted in listing . Parameter card errors: check noted in listing; source deck is bypassed . ALTERNATIVE .8 TRANSLATORS: '" none available (but see also the Basic Assembler, Section 201:181). / 201: 183.100 Burroughs B 100/200/300 Series Program Translator ' Compact COBOL PROGRAM TRANSLATOR: COMPACT COBOL .1 GENERAL . 11 Identity: .12 Description •••.•.... B 200 Compact COBOL . The B 200 Compact COBOL Translator converts source programs written in the B 200 Compact COBOL language (as described in Section 201:161) into machine code. Compilation proceeds at the rate of approximately 50 source cards per minute. Minimum configuration requirements for the translator are a B 273, B 283, or B 300 Central Processor with 4,800 positions of core storage, a card reader, a line printer, and 4 magnetic. tape units. Additional core storage and a card punch can be utilized when available. Object programs can be run on any B 263, B 273, B 283, or B 300 Series system equipped with the appropriate peripheral devices. B 200 Compact COBOL does not provide for the use of MICR sorter-readers, Disk Files, data communications devices, paper tape equipment, or listers. .232 Maximum size source statements: .•...•. limited to use of one verb and one to three operands per statement. .233 Maximum number of data names: . . • . . . 190. .234 Others Maximum number of object code instructions: ..•.. 2,800. Procedure names: .. 40. Elements in an array: 119. .3 OUTPUT .31 Object Program .311 Language name: ...•• B 200 Series machine language. .312 Language style: . . . . . machine code. .313 Output media: . . . . . . magnetic tape or punched cards. .33 The B 200 Compact COBOL Translator provides debugging aids, printer listings, and diagnostic printouts. The programming manual (Burroughs publication URS-052) lists various methods for optimizing compilation times and/or object program efficiencies for all COBOL divisions and each B 200 Compact COBOL verb. .13 Originator: .14 Maintainer: .•••••. Burroughs Corp. • 15 Availability: .•••••• November, 1964. .2 INPUT • 21 Language . 22 Form . 221 Input media: .•••..• punched cards. · 222 Obligatory ordering:. • Identification Division Environment Division Data Division Procedure Division • 223 Obligatory grouping: .. by division, section, paragraph. · 23 Subject Size Limitations .231 Maximum number of source statements: .. limited by size of target computer's core storage. Provision Source program: ..•. listulg. Object program: •••• listing (optional). Storage map: •••••.. listing (optional). Restart point list: .•. none. Language errors: . . . . listing. Object programsource program cross-reference table: . . . . . . . . • . • listing . .•.•••. E. Saumets Associates. .211 Name: .•..•••.... B 200 Compact COBOL; see Section 201:161. .212 Exemptions: .••••.. none. Documentation .4 TRANSLATING PROCEDURE .41 Phases and Passes Phase 1: . . . . . . . . . . reads source program, edits, performs lexical checks, lists source program, and stores it on tape • Phase 2:. . . . • . . • . • reduces symbols and processes labels . Phase 3: .••.•..•.. reduces data-names, prescans Pictures, performs label definition look- up. Phase .4: ..•.••..•• analyzes symbols and processes Picture items .. Phase 5: .••••..•.. processes Data Division, Procedure Division syntax, memory allocation, and mask interpretation; replaces data items with sets of properties. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 BURROUGHS B 100/200/300 SERIES 201:183.410 .41 Phases and Passes (Contd.) Phase 6: .••••••... generates literals, operand calls, descriptor calls, and subroutine calls. Phase 7: .•••••.• '.• processes value literals, , assembles object program, optimizes masks, writes loader, trace, and value literals on object tape, optimizes space occupied by literals, prints diagnostic messages. .42 Optional Model .421 .422 .423 • 424 .425 Translate: ..•••... yes. Translate and run: . • . yes. Check only: .•••••• no. Patching: ..••••.•• no. Updating:......... no. • 43 Special Features .431 Alter to check only: •. no . . 432 Fast unoptimized translate: •.••.•.• no. • 433 Short translate on restricted program: . no. .44 Bulk Translating: •.. yes. . 45 Program DiagnostiCS .451 Tracers: •.•.•••.. object time routine, included with object program. .452 Snapshots: •••••••• File Status Table can be printed at object time. .453 Dumps: .•.••.•... routines available at compile or object time. .6 COMPUTER CONFIGURATIONS · 61 Translating Computer .611 Minimum configuration:B 273, B 283, or B 300 Central Processor with 4,800 positions of core storage. B 122, 123, or 124 Card Reader. B 320 or 321 Line Printer. Four B 421, 422, or 423 Magnetic Tape Units. • 61 Larger configuration advantages: .•••.•. 4,800 additional core positions permit compilation of larger programs with a maximum of 400 data names • B 303 or 304 Card Punch provides punched card output of object program . · 62 Target Computer .621 Minimum configuration: any B 263, B 273, B 283, or B 300 Series System . .622 Usable extra facilities: . . • . . . . . . • . all except MICR sorterreader, Disk File, data communications devices, paper tape, and listers . .7 ERRORS, CHECKS, AND ACTION Error Check or Interlock Missing entries: check none . check . 46 Translator Library: •• none. .5 TRANSLATOR PERFORMANCE Unsequenced entries: Duplicate names: • 51 Object Program Space Improper format: check Incomplete entries: check Target computer overflow: check Inconsistent program: check • 511 Fixed overhead: ..•.. none. · 512 Space required for each input-output file: ..•••••••.• as specified in Data Division of source program. · 513 Approximate expansion of procedures: .••.• 3 to 1. .52 • 53 • 54 6/65 Translation Time: .•• approximately 50 source cards/minute. Optimizing Data: . • • • a list of ways in which the programmer can optimize both compile time and execution time is provided in the manual. Object Program Performance: ••... uses approximately 30% more core storage than good hand coding requires, but execution times are about the same, according to the manufacturer. Limitations on data and procedure names exceeded: check .8 ALTERNATIVE TRANSLATORS: none . Action halt and/or diagnostic message . diagnostic message . diagnostic message . halt and/or diagnostic message. precautionary message. halt and/or diagnostic message. halt and diagnostic message. 201: 184.100 Burroughs B 100/200/300 Series Program Translator 1401 SPS. Translator . PROGRAM TRANSLATOR: 1401 SPS TRANSLATOR The principal capabilities of the SPS Translator can be summarized as follows: .1 GENERAL .11 Identity: .•••..••.. Burroughs B 200/300 Series Symbolic Program Translator . Description . 12 The Burroughs Symbolic Program Translator (SPS Translator) converts IBM 1401/1460 SPS programs into Burroughs Assembly Language. The scope of the Translator is limited to translating Symbolic Programming System source code (see Section 401:171 of the IBM 1401 report) in single load format. Condensed SPS or Autocoder source programs cannot be translated. The minimum configuration requirements for the translating computer are a B 200/300 6-microsecond Central Processor with 4,800 characters of core storage, three magnetic tape units of any model, and any model card reader, card punch, and line printer. • • Decimal machine-language operand addresses are permissible, but only When they reference the fixed card read, punch, and print inputoutput areas. • Other decimal machine-language addresses can be used if defined and labeled by a special Define entry prior to translation. • Address modifications are performed correctly. • Up to six 1401 Sense Switches are simulated by means of six reserved character positions of core storage. II The complete translation process consists of three distinct phases: translation from SPS to Burroughs assembly language; post-translation patching of the assembly language coding as directed by notes on the translation listing; and assembly of the intermediate assembly-language program into Burroughs machine language. If any non-standard features or programming techniques have been utilized in the 1401 source program, direct translation of these program areas is impossible. Disk file instructions also require extensive hand translation and modification during the post-translation edit phase of the translation process. The Burroughs SPS Translator can be expected to perform efficiently When it is applied to the task of translating card-oriented SPS programs of modest size. No 1401 source program larger than 8,000 characters should be considered for translation and operation on a 9, 600-character B 200/300 Central Processor, because the eventually-produced object program consumes between 30% and 60% more core storage than the source program. Object program running times for translated card programs will nearly always be faster than on the 1401, and can be up to four times faster. The improvement is due partially to efficient use of the Burroughs threeaddress instruction format, but primarily to the completely buffered card input-output devices and printers in the Burroughs system. Translation times average about 5 minutes for 4, 000 charact~rs of IBM 1401 program volume. If the Translator has been applied within the scope of its design, the post-translation edit phase can usually be completed within an hour. Another five to ten minutes is then required to assemble the patched intermediate-language program into the auto-load object program deck. © Up to 35 IBM 1401 machine-language or mnemonic operation codes can be translated. Definition of constants and equation of symbolic labels are performed correctly. • Tape read/write error routines and printer page-overflow simulation routines are automatically generated. • Compare and Branch instructions, chained data transfers, and other sequences of 1401 instructions are -replaced by single instructions wherever possible. The standard card and tape 1401 SPS instructions are classified by the SPS Translator into four different categories: (1) The 27 instructions that are directly and accurately translated. (2) The translated instructions that require modification as noted on the translation listing. - (3) The instructions utilized by the Translator but not actually translated because they are of no use to the object program (e.g., Set Word Mark). (4) The group of 1401 instructions associated with special programming or hardware features that cannot be directly translated and will require special attention. ,Ina typical 1401 card processing program, approximately 60% of the instructions will normally fall into category (1), 38% into categories (2) and (3), and 2% into category (4). 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 BURROUGHS B 100/200/300 SERIES 201: 184.120 . 12 Description (Contd.) The principal IBM 1401 capabilities that cannot be handled by the SPS Translator include: .313 Output media: . . . . . . punched card decks or card images on magnetic tape. .32 Index registers. • Store Address Register instructions. • Pa,Per tape devices. • Disk file devices. .321 Standard ·inclusions: .. magnetic tape read/write error routines and linkages are automatically generated; printer pageoverflow routine is automatically simulated. • Any other non-standard features or devices. .33 • Operation code modifications by arithmetic quantities. . • 13 Originator: •.••••. Burroughs Corporation. .14 Maintainer: ••••••• Burroughs Corporation. .15 Availability: .•••••• January, 1964. .2 ~ • 21 Language .211 Name: .•••••••.•• mM 1401 Symbolic Programming System (SPS). .212 Exemption: •••.••. , statements aSsOCiated with all non-standard programming features and peripheral devices, and with 1401 capabilities not handled by the SPS Translator (see list above), .22 Form .221 Input media: ••••.•• mM 1401 SPS single load format program deck (or card images of the same type on magnetic tape) • • 222 Obligatory ordering: •• none • • 223 Obligatory grouping: •• none • .3 Size Limitations: •••• target computer must provide 30% to 60% more core storage than the amount utilized in the original 1401 target computer. OUTPUT .31 Object Program .311 Language name: .•.•• Burroughs Modified Basic Assembly Language is the intermediate result of the translation process; final object program is in Burroughs machine code. Documentation Subject Provisions analyzed listing of both source program and symbolic intermediate Object program: program; listing of object program is produced after assembly. Storage map: .••.... implied on assembly listing. Restart point list: •.. none . Language errors: •.•• any unrecognized 1401 operation codes are noted on the translation listing; decimal machinelanguage operand addresses referring to other than the fixed input-output areas are also noted as untranslated. Instructions to read and write magnetic tape can be directly translated. Therefore, the SPS Translator can be effectively utilized to produce functional object programs from tape-oriented source programs of up to 6,000 characters in volume, provided they use primarily standard mM 1401 programming techniques and features. .23 Conventions • Source program: } .4 TRANSLATING PROCEDURE .41 Phases and Passes Pass 1: •••.•••••• loads translator program on tape; writes 1401 SPS source deck on tape. Pass 2: " •••.•.•• determines size of all named fields (instructions or data); writes all named fields on a label tape. Pass 3: •••••••••• compares A and B operand addresses to label table; creates symbolic labels for input-output areas; flags (for listing purposes) invalid operand addresses. Pass 4: •••••••••. constructs a table of all word marks used; affects operand lengths as necessary. Pass 5: .••.••...• translates SPS operation codes; constructs entire B 200/300 symbolic instruction. Pass 6: ••••.••••. optimizes use of symbolic instructions by combining chained, compare, and editing instructions whenever possible. Pass 7: .•••••••.. generates standard subroutines according to input-output requirements. (Contd.) 6/65 PROGRAM TRANSLATOR: 1401 SPS TRANSLATOR .42 Optional Mode: •••.• none provided. .43 Special Features 201: 184.420 .54 Object Program Performance: •••.••.• execution speed will generally range from 1 to 4 times as fast as that of original 1401 program, depending upon type of program and speeds of peripheral devices. .6 COMPUTER CONFIGURATIONS .61 Translating Computer • 431 Alter to check only: •• no • .432 Fast Unoptimized translate: •••••••• no. .433 Short translate on restricted program: • no. .44 Bulk Translating: • . • after initial loading of translator card deck on tape, SPS programs can be bulk-translated without reloading the translator. .45 Program DiagnostiCS: •• none directly; the translation listing records the original and intermediate instructions, the data constants, and notes to aid post-translation editing. .46 Translator Library: •• none provided. .5 TRANSLATOR PERFORMANCE .51 Object Program Space: uses 30% to 60% more core storage than the SPS source program; tailoring of the intermediate symbolic program by the programmer can improve this performance considerably. • 512 Space required for each input-output file: •••••.••••• same as coded in source program. • 513 Approximate expansion of procedures: • 1 to 1 (high core storage demands are caused primarily by B 200/300 Series 12-character fixed instruction length). • 52 Translation Time .521 Normal translating: •• 0.0125S minutes, where S is number of source program statements. .522 Checking only: .••.•• none provided. .523 Unoptimized translating: ••••••• none provided. • 53 Optimizing Data: . . . . when possible, translator combines chained Move instructions, Compare and Branch instructions, carriage tape control, and editing operations into single instructions. © .611 Minimum configuration: ••••....... B 200/300 6-microsecond Central Processor with 4, 800 positions of core storage; 3 magnetic tape units of any model; and 1 line printer and card punch of anyavailable models. · 612 Larger configuration advantages:. • • • • • • additional core storage allows translation of larger 1401 programs and use of larger magnetic tape input-output blocks. • 62 Target Computer .621 Minimum configuration: .••••.•• any B 100/200/300 Series system with sufficient input-output equipment to make it logically equivalent to the original 1401 system. • 622 Usable extra facilities: •••••.••.•• all except paper tape, MICR readers, Disk File, and data communications equipment. .7 ERRORS, CHECKS, AND ACTION Error Check or Interlock Missing entries: Unsequenced entries: Duplicate names: Improper format: Incomplete entries: Target computer overflow: Inconsistent program: Invalid operation codes: 1965 AUERBACH Corporation and AUERBACH Info, Inc. none. none. none. check none. Action noted on listing . check none. noted on listing. check noted on listing. 6/65 201: 191.1 00 Burroughs B 100/200/300 Series Operoting Environment General OPERATING ENVIRONMENT: GENERAL .1 GENERAL . 11 Identity:.......... individual Burroughs service routines, as identified below. . 12 Three groups of routines are provided to assist in general computer operation: input-output control, dumps, and magnetic tape editing. A variety of dumps are available to print and/or punch the contents of core storage. They may be used as subroutines. There is also a set of trace routines. Check or Interlock Action In-out error single: check reread magnetic tape, or stop. check none. stop. In-out error perSistent: Overflow: Invalid instruction: Program conflicts: Description A straightforward input-output control subroutine is used to attempt several rereads for handling magnetic tape errors. In addition, a magnetic tape edit routine is provided to test for tape flaws. Error none. not possible. .45 Restarts: . . . . . . . . . as incorporated in user's program. .5 PROGRAM DIAGNOSTICS .51 Dynamic Trace routines are available for all B 100/200/ 300 Series Systems. Each Trace routine is capable of printing or punching the following information for specified instructions: 'the instruction's location, the instruction itself, comparison indicators, and the contents of two areas of core storage before and after execution. Core storage requirements range from 729 to 823 characters, depending upon the processor model. .2 PROGRAM LOADING .21 Source of Programs: .22 Library Subroutines: . no special provisions. . 23 Loading Seguence: ... as loaded by operator . .3 HARDWARE ALLOCATION:. . . . . as incorporated in user's program. .4 RUNNING SUPERVISION .41 Simultaneous Working:. as incorporated in user's program. . 42 Multiprogramming:... a pre-determined set of small independent routines can be run in an intermingled mode, each able to stop and start independently; see Section201:192. .6 OPERATOR CONTROL: . . . . . . . as incorporated in user's program. . 43 Multi-seguencing: ..• none • •7 LOGGING: . • • • • • • • manual . .44 Errors, Checks, and Action .8 PERFORMANCE .84 Program Loading Time:. . . . . . • . . . . maximum of 6 seconds, using B 124 Card Reader, to load 4,800character core storage. punched cards, punched tape, magnetic tape, or Disk File. Check or Interlock Loading input error: 6/65 check stop. .52 Post Mortem A number of standard dump routines are available to punch and/or print the contents of specified areas of core storage. Printed output can be produced either in full, 120-character lines or as five annotated, 12-character fields per line. Punched-card output can be in either auto-load format or in un-numbered cards. Core storage requirements range from 42 to 384 characters, depending upon the function or pair of functions to be performed. 201:192.100 Burroughs B 1001200/300 Series Operating Environment Multiprocessing OPERATING ENVIRONMENT: MULTIPROCESSING .1 GENERAL .11 Identity: .12 Description the Program Schedular concept becomes somewhat more practical than when sm'iller memory sizes are considered. This multiprocessing approach,is designed for programs that are input-output limited and written in a cyclic manner. Because the number of input-output units available per computer system is severely restricted, and because magnetic tape operations are unbuffered, an efficient fiveprogram mix is difficult to achieve in practice. Small data transcription programs appear to be best suited for effective multiprocessing with the Program Schedular. . . . . . . . . . B 200/300 Series Multiple Program Productivity Advisor. B 200/300 Series Program Schedular. "Multiprocessing" in B 200/300 Series systems is implemented by two closely related routines: the Multiple Program Productivity Advisor and the Program Schedular. & Productivity Advisor: This program has been designed primarily to serve as an aid in determining the most efficient manner of using the Program Schedular in a given situation. The Productivity Advisor accepts basic data regarding the programs to be run simultaneously and produces a series of tables displaying the productivity which would be realized for each possible combination of priority ratios. Depending upon the particular jobs under consideration, the productivity tables show this information in terms of lines per minute, cards per minute, or records per minute. By reviewing the productivity figures for various ratio combinations and considering the volumes associated with each job, the user can select the ratio that will most efficiently accomplish his purposes. He may then use this information as input to the Program Schedular. ("-- When it becomes necessary to add, delete, or modify any of the programs being run together, the Program Schedular must be used to prepare a new multi-program package. .13 Availability: . . . . . . . June, 1963 (date released for general use). .14 Originator: Burroughs Corp. .15 Maintainer: Burroughs Corp. .16 First Use: . . . . . • . . demonstrated in January, 1963. .2 PROGRAM LOADING .21 Source Programs .211 Programs from online libraries: .•.•. none. .212 Independent programs: up to 5 programs are input to the Program Schedular. .213 Data: . . . . . . . . . . . . must be supplied as called o Program Schedular: for by each of the programs being run toIn many applications of B 200/300 Series systeJ;Ils, gether. the cycle time of the input-output units exceeds .214 Master routines: . . . . executive routine (3 inthe internal processing time, so that a surplus structions); one routine of computing capability is available. The Proper program is created gram Schedular permits users to package by the Program Schedular multiple programs for processing at the same and included in the multitime, thereby maximizing the use of the central program deck. processor. During this packaging operation, a specially-conditioned executive routine, a .22 Library Subroutines: . none. fully documented program listing, and an autoload object program deck are prepared. Up to . 23 Loading Sequence: ... all programs to be run tofive programs can be packaged together for gether (maximum of 5) subsequent multiple processing. Since each are contained in the multiprogram functions independently of all other program deck. The comprograms, runs may be combined, started, or plete deck is loaded in one stopped whenever the user desires. operation. Up to five independent and unrelated programs can be run simultaneously. Since all programs mustbe stored in core storage at the same time, the size of each program is severely limited. When the maximum core storage available for B 20'0/300 Series processors (19,200 characters) is utilized, © .3 HARDWARE ALLOCATION .31 Storage .311 Segmentation: . . . . . . no provisions. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201:192.312 BURROUGHS B 100/200/300 SERIES .312 Occllpation of working storage: . . . . . . . . . assigned in scheduling phase of the Program Schedular. Programs must be loaded in relocatable form. • 32 Input-Output Units .5 PROGRAM DIAGNOSTICS .51 Dynamic .511 Tracing: . • . . . . . . . . none. .512 Snapshots: . . . . • . . . none. .52 Post Mortem: . . . . . . none. .6 • 321 Initial assignment: ... by program. • 322 Alternation: . • . • • . . as indicated by user. • 323 ReaSSignment: . . . . . by scheduling phase of the Program Schedular (to increase simultaneity) . OPERATOR CONTROL: .7 LOGGING: . . . . . . . . as incorporated into user's individual routines. •4 RUNNING SUPERVISION .8 PERFORMANCE .41 Simultaneous Working: implemented in sequencing of programs by Program Schedular. Reassignment of input-output units is also made wherever decided. · 81 System ReqUirements • 42 Multiprogramming: .• maximum of five programs. Each program is assigned a priority number and status (active or inactive) by the programmer. During actual operation the operator can change the priority or status of a run. • 43 Multi-sequencing: ••. none . .44 Errors, Checks, and Action: • • . . . . . . . . the following checks for errors are made during the editing phase of the Program Schedular routine. No checks are made during object program execution time. Check or Interlock Loading input error: none. Allocation impossible: check Storage Overflow: check In-out error single: Invalid instructiOI)S: Program conflicts: Arithmetic overflow: Invalid operation: ImprQper forma~: Invalid address: • 4(i 6/65 check either restart or continue, depending on circumstances. check print message. check print message. none. check check check print message. print message. print message. Restarts: •.•..•... none . • 811 Minimum configuration: •.•.. central processor plus those input and output devices required by individual programs. .812 Usable extra facilities: . . . . . . . . larger core storage. 1 or 2 card readers. card punch. 1 or 2 line printers. magnetic tape (1 to 6 units). lor 2 paper tape readers. paper tape punch. .813 Reserved equipment: . all of core storage is available; "executive routine" consists of only 3 instructions per program. .82 System Overhead • 822 Reloading frequency: Action print message. print message and halt. as incorporated into user's individual routines . for each new set of routines to be run, the Multiple Program Productivity Advisor and Program Schedular routines must be run, and the resulting program deck loaded. For a multi-program deck, that is already prepared, reloading must take place each time a routine in the deck is to be run. • 83 Program Space Available: . . . . . . . all of core storage except for "executive routine" requirements of 3 instructions per program. • 84 Program Loading Time: . . . • . . • . . . maximum of 6 seconds, using B 124 Card Reader, to load 4,800character core storage. .85 Program Performance: generally as predicted by the Productivity Advisor (Paragraph. 12), unless central processor time becomes the limiting factor for a particular combination of programs. 201: 193.100 Burroughs B 100/200/300 Series Operating Environment Tape/Disk Operating System OPERATING ENVIRONMENT: TAPE/DISK OPERATING SYSTEM .1 GENERAL . 11 Identity: .. .12 Description B 200 Tape/Disk Operating System. The B 200 Tape/Disk Operating System is a Control System designed to operate with magnetic tape or Disk File subsystems. One of four executive routines contained within the Operating System is in core storage at all times. The four executive routines are: • .13 Tape Executive Routine - controls all processing and program segmentation by calling in control routines, utility programs, system functions, user programs, and overlays from a magnetic tape source. • Disk File Executive Routine - controls all processing and program segmentation by accessing a Disk File to bring in control routines, utility programs, system functions, user programs, and overlays. • Multiprocessing Control - controls all user programs of a relatively-addressed nature by means of a cycle-time clocking scheme de.signed to make effective use of peripheral equipment. Core memory is allocated according to a predetermined priority code and memory-availability scheme. Multiprocessing Control is provided for use with Disk File systems only. • Program Debugging Control - provides formatted output of memory dumps, trace points, control state running, and file dumps as directed by specification cards. Program Debugging Control is available for use with either magnetic tape or Disk File Systems. " .211 Programs from on- line libraries .... .212 Independent programs: . . . . • . . . .22 Library Subroutines: . called in from User Program Library, Operating System Library, or as loaded from some peripheral source. .23 Loading Sequence: .. sequential loading of programs as provided by operator on User Program Library tape or on card reader. The system operator can interrupt this sequence by calling in specific programs through the Supervisory Printer. stored programs can also call in other predetermined programs. .3 HARDWARE ALLOCATION .31 storage June, 1965. June, 1965. July, 1965. July, 1965. . 14 Originator: Burroughs Corp . .15 Maintainer: Burroughs Corp. .16 First Use: . Bankers Data Processing, Boston, Mass. July, 1965. .2 PROGRAM LOADING . 21 Source of Programs: . . 311 Sequencing of program for movement between levels: . . . •. i \" all programs of a checkedout nature can be added to a Program Add Tape. © 1965 Disk File or magnetic tape. can be called in from punched cards, paper tape, or disk ·file. .213 Data: . . . . . . . . . . . as required by users' programs. .214 Master routines: ... either the Tape Executive or Disk File Executive Routine is loaded into 480 character positions of core storage by means of a Tape start or Disk Start Card. Any executive routine can then call in any other executive routine. Availability Tape Executive Routine: Disk File Executive Routine: . . . . . . . . Multiprocessing Control: Program Debugging Control: . . . . . . I The Permanent User Program Library, including all error routines and special situation subroutines, can be maintained on either the Program Add tape or on the' Disk File. Programs can contain absolute or relative addresses and input-output unit numbers. AUERBACH Corporation and AUERBACH Info, Inc. programs are assembled in a single-instruction format adaptable to relative addressing and relative unit assignment by the Executive Routine.' 6/65 BURROUGHS B 100/200/300 SERIES 201: 193.312 · 312 Occupation of working storage: . . . . . . . . once programs are allocated to a portion of core storage, they are not disturbed except by operator request. If the interruption calls for a high priority program change, the original program is stored on tape or disk in a "saved" state. 32 .42 Multiprogramming: . the number of programs in the mix is arbitrarily set at a maximum of three, with five more permitted in a call-in stack. The normal program processing cycle-time, stored as a notation with the program call record, determines the individual program time allotment. A call for change of priority can alter, suspend, or replace programs that are currently in process or still in the program stack. • 43 Multi -sequencing:. . . not provided. .44 Errors, Checks, and Action (See table below. ) .45 Restarts:........ Input-Output Units .321 Initial assignment: .. . 322 Alternation: . . . . . . • 323 Reassignment: .... . performed by the Multiprocessing Control based upon program need and available equipment. not provided• provided by re-calling the Program with input-output configuration speCified differently. ·4 RUNNING SUPERVISION .41 Simultaneous Working: the programs in the mix will be allocated their required input and output units as available at load time by a system test of the configuration available and the priority rating assignment. The degree of simultaneous working of input-output units depends exclusively on the amount of skill with which the source program was written . . 44 .451 Establishing restart points: . . . . . . . .. .452 Restarting process:. handled by the executive routine when pOSSible, or by user-written utility or maintenance programs. dependent upon individual user programs. automatic system recovery brings the End-of-Job Function into memory. Individual user programs must provide for restarts if required. Errors, Checks, and Action Error Check or Interlock Action Loading input error: Allocation impossible: system check system check Input-output errors: system and I/O equipment checks message to the operator. delay processing of the program until allocation becomes possible. all errors detected during control state initiate automatic retries where possible. system assumes a program added to the User Library is tested and does not exceed available core storage. hardware can allow execution of some properlyformatted invalid instructions; in some cases the hardware will cause an alarm and stop when an invalid instruction is detected. Storage overflow: user program check Invalid instructions hardware Improper format: Invalid address: Reference to forbidden area: . • . . . . . . . . . none. none. / none. (Contd.) 6/65 201:193.500 OPERATING ENVIRONMENT: TAPE/DISK OPERATING SYSTEM .5 PROGRAM DIAGNOSTICS ·8 PERFORMANCE .51 Dynamic · 81 System Requirements .511 Tracing:. . . . . . . .. . 512 Snapshots: . . . . . . . . 52 Post Mortem: . . . .. .6 OPERATOR CONTROL .61 Signals to 0Eerator .611 Decision required by operator: .... " ..... Program Debugging Control executive routine allows trace points to be set by memory location, instruction type, control points, or change of control points. specifications are entered as each program is loaded. Dumps of any nature can be called in under Program Debugging Control. Under any executive routine's control, a dump can be executed by operator interrupt. printer or tape dumps, as well as storage dumps, can be executed by means of an operator function call. .62 0Eerator's Decisions: keyboard entry. .63 0Eerator's Signals: .7 LOGGING . 71 0Eerator Signals: ... . 72 0Eerator Decisions: . .812 Usable extra facilities: . . . . . . . .813 Reserved Equipment: typed message on the Supervisory Printer. .612 Action required by operator: ........... typed message. .613 Reporting progress of run: . . • . . • • . • typed message. .631 Inquiry: ................. .632 Change of normal progress: . . . . . . . · 811 Minimum configuration: . . . . . . . . . . keyboard entry. · 82 Program SEace Available: . . . . . . . keyboard, card, or paper tape entry to alter priorities or speCified inputoutput configurations. typed record of keyboard entry. typed record of keyboard entry. .84 .73 Run Progress: . . . . . typed messages. .74 Errors: . . . . . . . . . typed messages. From magnetic tape:. .75 Running Times: ... typed messages indicate end-of-job conditions. Operator can then type any desired supplements. From Disk File: . . . . .76 MultiErogramming Status: .... Program Performance: . . . . . . . . . keyboard inquiry of program status results in a report on the Supervisory Printer of status of current program and those remaining in the call-in stack. © programs and Operating System controls are transferred from magnetic tape to core storage at up to 66KC in binary mode, and from Disk File to core storage at lOOKC . all but 480 characters of core storage, and all available Disk File storage except the portion that is reserved according to the number of functions included within the Disk File Control. Program Loading Time From cards: . . . . . . .85 any available keyboard card, paper tape, and magnetic tape devices will increase the number and variety of programs permitted in the "multiprocessing" mix. 1 magnetic tape unit or a user-designated portion of Disk File storage, the size of which will be determined by the size of the User's Permanent Program Library and desired Disk File Controls, and 480 characters of core storage. System Overhead .821 Loading time: .. . .. . 83 B 273 or B 283 Central Processor with 9, 600 characters of core storage. B 495 Supervisory Printer. Card or paper tape reader (any model) . Line printer (any model). 3 magnetic tape units, or 2 magnetic tape units and 1 Disk File (any model tape units). 1965 AUERBACH Corporation and AUERBACH Info, Inc. 200, 475, 800, or 1400 cards per minute, depending upon card reader model. varies with tape unit speed and position of user program on the tape. 100 KC transfer rate. during each program cycle, less than 1 millisecond will be required for control purposes in most cases; if a specific system function is called for, Multiprocessing Control is not available. 6/65 2Ql:201.001 Burroughs B 1001200/300 Series System Performance SYSTEM PERFORMANCE Generalized File Processing (201:201.100) These are a series of typical commercial data processing applications that involve the processing of a detail file against a master The detail file contains data used to update the master file by inserting new records, deleting old records, and recording changes to records in the file. A printed record of each transaction is produced. This type of processing occurs, for example, in a payroll routine in which the master file is the payroll file, the detail file contains the data from the periodic time sheets, and the output is largely in the form of paychecks. file. . TheStandard File Problems are fully described in the Users' Guide, Section 4:200.11, and the Standard Configurations used as a basis for measuring the performance of·B 100/200/300 Series Systems are shown in Section 201:031 of this report. The master files in Standard Configuration I are on punched cards; in Configurations II and Ill, the master files are on magnetic tape. All configurations use the card reader for input of the detail file and the printer for output of the report file. In Standard File Problems A, B, C, and D, the controlling factor for Configuration I is card punching time. For Configurations II and III, the sum of central processor computational tinie and tape time (which cannot be overlapped) is the controlling factor under most conditions; at high activity ratios, however, the total processing time is controlled by the printer speed. Sorting (201:201. 200) Times are presented for sorting SO-character records on magnetic tape. These times are estimated both by the standard procedures described in the Users' Guide, Section 4:200. 21, and for routines produced by.the manufacturer's Tape Sort Generator I. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 BURROUGHS B 1001200/~00 SERIES 201 :201. 011 WORKSHEET DATA TABLE 1 CONFIGURATION ITEM I 1 (File 1) Char/block Records/block K msec/block File 1 = File 2 80 0.5 (File 1) 1,080 1 .. 080 10 75 (File 1); 200 (File 2) REFERENCE m II 10 35.4 55.0 1 - - - - - - - ~------ 1 - - - - - - - - ~126126 File 3 75 1------ JnputOutput Times msec/switch msec penalty 2 Central Processor Times msec/block msec/record msec/detail msec/work msec/report 1 " - - - - - - ~ --11-1--- ....,.f-----158 158 File 4 4:200.112 0 0 0 File 1 = File 2 t - - - - - 1 - : - - - - - -1 - - - - - - f - - - - - 0 0 0 File 3 ~4---- r----- - - - -1 - - - - - - - - - ~----0 0 0 28.3 50.0 1.0 (File 1); 1. 2 (File 2) File 1 = File 2 1 - - - - - - 1 - - - - - - - ' -1 - - - - - - - f - - - - - 1.0 1.0 1.0 File 3 - - - -1 - - - - - - 1 - - - - - - ~---- f - - -0.8 0.8 0.8 2.7 2.7 - - -1 - - -3.1- ~---- - - -3.1 ~+~9 ~8 - - - - - -1 - - - - - - - - - - - - - - -38.8 --1-------- - - - - - - - - - - - - - - C.P. Plinch 2.7 msec/block Standard File Problem A F =1.0 dominant column. Standard File Problem A Space Printer C.P. 2.7 C.P. Printer 2.7 ~---- 1 . 6 ----- ---a1:O-1 - - - ---al.o 1 - - a2 K "il3"K ----. - File 1: Master In - 1'9":'4 - - - ""388:0- - - 50.0 1.0 388.0- 1 - - 28.3 - -I - 28."3 - - I--- - - -- - - - - -I - - ---10.0 File 3: Details - --- - - - - -0.5 - I - - - - -10.0 - -1,580 8.0-'"T,5ao-8.0 File 4: Reports 0.4 ~--...",....,.. File 2: Master Out Total 4 4:200.1132 . - I - ---38.-8-- - - - - 3 - 8 . 8 - - - 3 for C.P. and 2.7 I - - - --'-3-.1 - ---r:2'" ~oo- -5Q."ij'"""'" 26.8 200 1,580 539.7 496.3 4:200.114 1,580 Unit of measure (character) 520 232 Std. routines -- - - ! - - - -520- - - - - - - - - - - -100 100 Fixed --~-360 3 (Blocks 1 to 23) 360 360 ---==--. --:::2 , " 8 0 8--"2,808--I 2,808 6 (Block 24 to 48) - - ' - - - _ . -'-- --------- ! - - - - - - - - - --2,360 520 2,360 Files 1-------- - -108- - - - '-----_.108 Working 0 Total 4,020 6,256 4:200.1151 6,256 (Contd.) 6/65 201 :201.1 00 SYSTEM PERFORMANCE .1 GENERALIZED FILE PROCESSING . 11 Standard File Problem A . 112 Computation: . . . . . . . standard • .113 Timing basis: . . . . . . using estimating procedure outlined in Users' Guide, 4:200.113 . . 114 Graph: . • . . . . . . . . . see graph below . . 115 Storage space requiredConfiguration I: . . . . 4,020 characters. Configuration II:. . . . 6, 256 characters. Configuration III: ... 6, 256 characters. . 111 Record sizesMaster file: . . . . . . 108 characters. Detail file: . . . . . . . 1 card. Report file: . . . . . . . 1 line. 1,000.0 7 4 2 100.0 7 I 4 Time in Minutes to Process 10,000 Master File Records 2 ~ 10.0 7 ---- - ./ ./ / 4 2 - ~ ./ ~ 1.0 7 4 / 2 0.1 0.0 0.1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record (Roman numerals denote standard System Configurations.) © 1965 AUERBACH Corporatio~ and AUERBACH Info, Inc. 6/65 BURROUGHS B 100/200/300 SERIES 201 :201.120 . 12 Standard File Problem B . 122 Computation:.. . . . . . standard • .123 Timing basis: • . . . . . using estimating procedure outlined in Users' Guide, 4:200.12. . 124 Graph: • . • • . . . . . . . see graph below. . 121 Record Sizes Master file: . . . . . . 54 characters. Detail file: . . . . . . . 1 card. Report file: . . . . . . . 1 line. 1,000.0 7 4 2 100.0 7 4 Time in Minutes to Process 10,000 Master File Records 2 10.0 .- 7 --~ ~ I ~ ./ /' 4 2 1.0 / I ~ 7 4 2 0.1 0.0 0.1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record (Roman numerals denote standard System Configurations.) (Contd.) 6/65 201 :201.130 SYSTEM PERFORMANCE . 13 .132 Computation: . . • . . . . standard . .133 Timing basis: ••.... using estimating procedure outlined in Users' Guide, 4:200.13. • 134 Graph: . . . . . . . . . . . see graph below. standard File Problem C .131 Record SizesMaster file: ....•• 216 characters. Detail file: •.•..•. 1 card. Report file: . . . . . . • 1 line. 1,000.0 7 4 2 ~~ I 100.0 7 4 Time in Minutes to Process 10,000 Master File Records 2 10.0 7 4 --' -~ -' ~ .- -- - / \\}.. V ~ 2 1.0 7 4 2 0.1 0.0 0.1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record (Roman numerals denote standard System Configurations.) © 1965 AUERBACH Corporotion and AUERBACH Info, Inc. 6/65 201 :201.140 • 14 BURROUGHS B 100/200/300 SERIES Standard File Problem D · 142 Computation: .••.... trebled. • 143 Timing basis: . . . . . . using estimating procedure outlined in Users' Guide, • 141 Record Sizes - Master file: ....•. 108 characters. Detail file: • . • • . . . 1 card. Report file: • . . . . . . lIllie. 4:200.14. · 144 Graph: . . . . . . . . . . • see graph below. 1,000.0 7 4 2 100.0 7 I 4 Time in Minutes to Process 10,000 Master File Records 2 ~ 10.0 - .- 7 ~ l/"~ 4 2 ~~ V /g I 1.0 7 4 2 0.1 0.0 0.1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record (Roman numerals denote standard System Configurations.) (Contd.) 6/65 201 :201.200 SYSTEM PERFORMANCE .2 SORTING .213 Timing basis: ••.... as in Paragraph 4:200.213, using 2-way merge for Standard Configuration IT and 3-way merge for Configuration ill. .214 Graph: . . . . . • . . . . . see graph below. .21 Standard Problem Estimate .211 Record size: . . . . . . . 80 characters. . 212 Key size: . . • . . . . . • 8 characters. 1,000 7 4 2 ~I 1I 100 , 7 / / 4 V 2 Time in Minutes to Put Records into Required Order 10 II ~ L V V 1/ , 7 ~ / 4 Y 2 / Y 1 ~' , / / 7 / I' 4 2 0.1 / / ~ V -IV 100 2 / 4 7 1,000 2 4 7 10,000 2 4 7 100,000 Number of Records (Roman numerals denote standard System Configurations.) © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 BURROUGHS B 100/200/300 SERIES 201 :201.220 . 22 .223 Timing basis: •••••• times supplied by Burroughs Corporation . . 224 Graph: ..•••••••.. see graph below . Tape Sort Generator • 221 Record size: •.•.••• 80 characters. . 222 Key size: .•••.•••• 8 characters. 1,000 7 4 2 100 "7 7 7 ,J 4 2 V Time in Minutes to Put Records into Required Order 10 II r~ 7 7 4 / ~y 2 I/" V 1 7 ~ 4 2 7 V l...o" 1/ V / 0.1 100 2 4 7 1,000 2 4 7 10,000 2 4 Number of Records (Roman numerals denote standard System Configurations.) 6/65 7 100,000 201 :211.1 01 Burroughs B 100/200/300 Series Physical Characteristics \ PHYSICAL CHARACTERISTICS Width, inches Depth, inches Height, inches Weight, pounds Power, Central Processor (all models) 29 66 55 1,200 0.7 2,000 B 122 Card Reader Card Reader (all other models) B 303 Card Punch B 304 Card Punch Line Printer (all models) 29 48 17 29 41 50 102 920 0.20 1.3 700 3,000 44 73 74 28 27 29 53· 47 55 4,000 5,500 4,480 B 333 Multiple Tape Lister Multiple Tape Lister (all other models) 40 29 55 800 1.4 2.2 2.3 idle 3.5 printing 1.7 74 29 55 1,750 Magnetic Tape Unit (all models) B 116 Sorter-Reader Sorter-Reader (all other models) 29 28 74 900 180 144 35 35 58 58 Paper Tape Reader Paper Tape Punch Supervisory Printer Record Processor 30 30 22 63 24 24 22 116 Teletype Terminal Typewriter Terminal Typewriter Inquiry Station Dial TWX Terminal Central Terminal 24 24 18 Basic Disk File/Data Communication Control Unit Disk File Storage Module Disk File Electronics Unit Unit 655 1,283 1,738 KVA BTU per hr. 1,740 4,480 3,800 3,580 2.3 idle 3.5 printing 2.05/ 3.35 9.6 8.0 24,000 22,000 60 60 50 65 437 426 200 2,800 0.91 0.59 0.3 4.5 3,100 1,500 negligible 12,000 38 38 20 42 42 40 500 500 60 0.23 0.23 0.26 800 800 800 24 24 38 44 42 43 500 525 0.23 0.4 800 1,000 32 46 73 1,000 1.5 5,000 22 46 53 3,800 1.46 3,800 45 46 53 450 1.1 4,100 7,200 General Requirements Temperature: •••••••••• between 66° and 80°F. Re1ativehumidity: ••••••• between 30% and 65%. Power: ••••••••••••••• 115/230-volt, 1-phase, 60-cycle, 3-wire; or 120/208-volt, 1phase, 60-cycle, 3wire. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201 :221.101 Burroughs B 100/200/300 Series Price Data . PRICE DATA IDENTITY OF UNIT CLASS CENTRAL PROCESSORS No. Name PRICES * Monthly Rental $ Monthly Maintenance $** Purchase $ B 160 B 170 B 180 Card Processor MICR/Tape Processor Tape Processor 1,030 1,340 1,195 105.00 110.00 105.00 67,500 74,250 71,325 B 250 B 251 1,650 4,400 110.00 1,175.00 56,100 175,000 B 260 B 270 B 280 MICR/Ledger Processor VRC System (includes B 102, B 122, and B 104) Card Processor MICR/Tape Processor Tape Processor 1,500 1,650 1,585 105.00 115.00 110.00 67,500 74,250 71,325 B B B B Card Processor MICR/Tape/Disk File Processor MICR Processor Tape/Disk File Processor 1,600 1,850 1,665 1,785 110.00 125.00 115.00 115.00 72,000 83,250 74,925 80,325 Basic Processor 1,645 110.00 74,025 263 273 275 283 B 300 (Note: Each Central Processor includes 4,800 character positions of core storage.) CORE STORAGE MODULES Additional 4, 800 characters Additional 9,600 characters CENTRAL PROCESSOR OPTIONAL COMMANDS Transfer and Branch 16-Pocket Sorter-Reader Control Selective Stacking (B 304 Card Punch only) 20.00 10.00 24,750 14,625 450 450 550 325 50 50 50 25 30 15 - 1,250 1,350 675 50 50 50 50 50 25 65 50 100 25 - 1,125 3,325 2,250 4,500 1,125 250 95 85 50 50 50 50 40 45 40 15 50 50 15 5.00 - 1,800 1,800 1,610 675 2,250 2,250 675 (Note: above options are available with B 200/300 6-/.Isec Processors. ) Transfer and Translate Unit Interrogate Data Compress and Expand Binary Card Read/Punch B 332 Lister Control (Note: above commands are available with B 300 Processor only.) CENTRAL PROCESSOR OPTIONAL FEATURES * ** 132-Printer-Position Capability Card Reader Busy Branch Printer/Lister Selector Card Reader Early Release 66KC Magnetic Tape Control 72KC Magnetic Tape Control Sense Switches 5.00 5.00 5.00 One-tIme charge apphcable When certam unIts are added to an eXlstmg system mstaIlatlOn. Maintenance charges are slightly higher in rural:areas. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 201:221.102 BURROUGHS B 100/200/300 SERIES IDENTITY OF UNIT CLASS No. Name CENTRAL PROCESSOR OPTIONAL FEATURES (Continued) (Note: see System Configuration chart, page 201:031. 001, for feature applicability.) INP.uTOUTPUT CONTROL MODULES MICR Sorter-Reader Paper Tape MICR Sorter/Paper Tape Supervisory Printer Magnetic Tape Disk File Data Communications PRICES * Monthly Rental 85 85 130 50 85 130 50 65 120 185. 15 155 15 15 10.00 10.00 10.00 - 2,925 5,400 8,325 675 6,975 675 675 1,890 2,000 2,000 465.00 500.00 500.00 85,050 90,000 90,000 1,900 500.00 85,500 1,800 2,000 500.00 550.00 90,000 99,000 2,300 615.00 103,500 1,080 200 50.00 9,000 40.00 70.00 75.00 115.00 145 220 320 400 600 20 9,900 18,000 18,000 27,000 800 $ Monthly Maintenance $** 10.00 Purchase $ (Note: B 300 Series requires one module for each class of inputoutput device used; B 200 Series requires the modules only for extra input-output devices attached in the field.) INPUTOUTPUT BIOI B 102 B 103 B 104 B 106 B 107 B 116 MICR Sorter-Readers l3-Pocket Non-System (1560 dpm) 13-Pocket With Standby (1560 dpm) 13-Pocket With Endorser Capability (1560 dpm) 13-Pocket Without Standby (1560 dpm) 13-Pocket With Standby (1200 dpm) 13-Pocket With Endorser (1200 dpm) 16-Pocket With Endorser Capability (1560 dpm) Endorser (B 103 and B 116 only) B 122 B 123 Bl24 B 129 * - B 303 B 304 Card Punch (100 cpm) Card Punch (300 cpm) 450 650 65.00 115.00 20;250 29,250 B 141 Paper Tape Reader (500-1000 char/sec) Input Code Translator Card Reader/Paper Tape Reader Selector Switch 400 70.00 18,000 50 180 10.00 8,100 50 15 Paper Tape Punch (100 char/sec) Output Code Translator Card Punch/Paper Tape Punch Selector Switch 50 50 190 170 15 B 341 ** Readers and Punches Card Reader (200 cpm) Card Reader (475 cpm) Card Reader (800 cpm) Card Reader (1,400 cpm) Postal Money Order Option 40.00 10.00 - 675 8,550 7,650 675 One-time charge applicable when certain units are added to an existing system installation. Maintenance charges are slightly higher in rural areas. . (Contd.) 6/65 201:221.103 PRICE DATA IDENTITY OF UNIT CLASS INPUTOUTPUT (Continued) Name No. B B B B B 320 321 325 328 329 Printers and Line Printer Line Printer Line Printer Line Printer Line Printer B 323 B 326 B 332 B 333 B 421 B 422 B 423 B 424 B 425 B 495 B 401 B 481 B B B B AUXILIARY STORAGE * ** 483 493 484 486 B471 B 475 * Listers (475 lpm; 120 p.p.) (700 lpm; 120 p.p.) (700 lpm; 132 p.p.) (1040 lpm; 120 p.p.) (1040 lpm; 132 p.p.) $ Monthly Maintenance $** Purchase $ 170.00 175.00 185.00 195.00 205.00 54,000 54,000 57,375 59,600 63,000 200 10.00 9,000 1,600 1,200 290.00 245.00 72,000 72,000 1,700 1,300 1,290 310.00 260.00 290.00 76,500 76,500 72,000 1,800 325.00 81,000 750 200.00 33,750 10 - Units Unit (18/50KC 700 145.00 31,500 Unit (24/66KC 800 155.00 36,000 Unit (24KC at 495 145.00 31,500 Unit (66KC at 850 165.00 38,250 Unit (18/50/72KC 850 165.00 38,250 300 35.00 13,500 1,150 83 540.00 25.00 63,100 3,475 460 480 660 55 700 1,095 55.00 55.00 75.00 10.00 80.00 100.00 20,700 21,600 29,700 2,475 31,500 49,275 710 990 80.00 115.00 31,950 44,550 Multiple Tape Lister (1600 lpm) First Additional Multiple Tape Lister (1600Ipm) First Additional Multiple Tape Lister (1250 lpm) Master MUltiple Tape Lister (1600 lpm) Slave Multiple Tape Lister (1600 lpm) Simultaneous Tape Skipping (B 322 only) Magnetic TaEe Magnetic Tape at 90 ips) Magnetic Tape at 120 ips) Magnetic Tape 120 ips) Magnetic Tape 83 ips) Magnetic Tape at 90 ips) Monthly Rental 810 1,200 1,275 1,325 1,400 Dual Printer Control B 322 PRICES 85 240 Typewriter Supervisory Printer Record Processor Ledger Processor and Printer Optical Reader Data Communications Teletype Terminal 120-char buffer 240-char buffer Typewriter Terminal Typewriter Inquiry Station Dial TWX Terminal Central Terminal Disk File Electronics Unit Storage Module 50 400 One-time charge applicable when certain units are added to an existing system installation. Maintenance charges are slightly higher in rural areas. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6/65 BURROUGHS B 100/200/300 SERIES 201: 221.104 IDENTITY OF UNIT ,. CLASS CONTROLLERS No. B 450 B 247 B 248 B 451 B 100 SERIES ADAPTERS * ** 6/65 PRICES Name * Monthly Rental $ Monthly Maintenance $** Purchase $ Basic Disk File/Data Communication Control Disk File Control Data Communication Control Disk File Expanded Control 330 40.00 14,900 400 340 200 45.00 45.00 25.00 18,000 15,300 9,000 B B B B B B B 235 150 195 235 150 195 150 - 150 - 160 Adapter to use 170 Adapter to use 180 Adapter to use 160 Adapter to use 170 Adapter to use 180 Adapter to use 170 Adapter to use B 103, and B 104 B 170 Adapter to use B B B B B B B 124 124 124 321 321 321 102, B 322 One-time charge applicable when certain units are added to an existing system installation. Maintenance charges are slightly higher in rural areas. -- BURROUGHS B 5500 Burroughs Corporation ,', . ,r AUERBACH INFO, INC. PRINTED IN U. S. A. BURROUGHS B 5500 Burroughs Corporation AUERBACH INFO, INC. PRINTED IN U.S.A. &. 203:001 • 001 $liND ... BURROUGHS B 5500 CONTENTS AEDP AUER'lJAC~ ., IEnlJS CONTENTS Introduction • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • . • • . • • • • . • • Data Structure •••••••••••••.•••••••••.•.••.•.•••...•••• 203:011 203:021 System Configuration Table of Permissible Configurations . . . . • . . . . • . . . • . . . . . . . III: 6-Tape Business System •••••••••.•.••.•••••... V: 6-Tape Auxiliary Storage System ..•••.••.•••..••• VIlA: Integrated 10-Tape General System •••..•.•.••..••• VIm: Paired 10-Tape General System •.••...•.••••.•••• 203:031.011 203:031.1 203:031. 2 203:031.3 203:031.4 Internal Storage B 460/461 Memory Modules •.•••••••••••••••••.•...•.. B 430 Magnetic Drum .••••••••..••••••..•••••••••••• Disk File System. • . . . . . • • • • • • • • • . . • • • • • • . • • . • • • . • • 203:041 203:042 203:043 Central Processor B 5280 Basic System ..••••••.•••.•...•••••..•....•• B 5281 Processor ...•••••••..•.•.•.••..•••••••.••• 203:051 203:051 Console B 5310 Console •..••••••.•.••••••••••.••••••••.••• Display and Distribution Panel •.••••••••••.••••..•.•••• Supervisory Printer and Keyboard •..••••.•••••.•••.•••• 203:061· 203:061 203:061. 6 Input-Output: Punched Card and Tape B 122 Card Reader (200 cards/min) ••••••••••••••••••.•• B 123 Card Reader (475 cards/min) " .•••••••••••••••••• B 124 Card Reader (800 cards/min) ••••••.•••.•••••••••• B 129 Card Reader (1,400 cards/min) ••••••••••.••••••••• B 303 Card Punch (100 cards/min) .•.•.•.••••••••••.•.•• B 304 Card Punch (300 cards/min) •••••••••••••••••••••• B 141 Paper Tape Reader ..•••••••••••••••••••.• ' ...•• B 341 Paper Tape Punch .•••••••••••••••••••.••..•••• 203:071 203:072 203:072 203:072 203:073 203:073 203:074 203:075 Input-Output: PrintersB 320 Line Printer B 321 Line Printer B 325 Line Printer B 328 Line Printer 203:081 203:081 203:081 203:082 (475 lines/min) ....•••.•••••.•••••••• (700 lines/min) ..•...••.••••.•••.••.. (700 lines/min) .•••••.••.•••••••••••• (1, 040 lines/min) ••••••• . • . • • • . • • • • . • Input-Output: Magnetic Tape B 422 Magnetic Tape Unit B 423 Magnetic Tape Unit B 424 Magnetic Tape Unit B 425 Magnetic Tape Unit \ (24,000 or 66,000 char/sec) •.•.•••.• (24,000 char/sec) •••.•••.•••.•••• (66,000 char/sec) •.••••.•...••... (18,000, 50,000, or 72,000 char/sec) •• 203:091 203:091 203:091 203:091 Input-Output: OtherData Communications System •••••••..••.•.•.•.••••••.• B 5480 Data Communication Control Unit .••.•••••.•.••••.• B 450 Disk File and Data Communication Basic Control ••••••.. B 481 Teletype Terminal Unit .••..•••.••••..•••••••.•• B 483 Typewriter Terminal Unit •••••.••..••..••.••.••.• B 493 Typewriter Inquiry Station •••••.•.•••..•..•••.••• B 484 Dial TWX Terminal Unit ••••••.••.•••••••.•••..•• B 487 Data Transmission Terminal Unit .••••.••••.••.•••• 203:101 203:101 203:101 203:101 203:101 203:101 203:101 203:101 Simultaneous Operations B 5283 Input/Output Channel ••••••.•••••••••••.•••..•• Instruction List. • • • • • • • • • • . • • • . • • • • • • • • • • • . • • • . • • • • • . • . • Data Code Tables ••.••••••••••••••••.••••••••••••••.•••.• 203:111 203:121 203:141 © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 203:001.002 10/65 BURROUGHS B 5500 Problem Oriented Facilities Tape Sort Generator .••..••.•••••••••••••••••..••.•• Disk File Sort Generator. . • • . • . • • . • . . . • • • • • • • • • • • • . • • Scientific Library Procedures ..•.•••••••.••.••••.••.•• 203:151.13 203:151.13 203:151.17 Process Oriented Languages Extended ALGOL .••••••.••.••••••••..••••••.•.•••• COBOL 61 Extended •...•••..•••.•.••••.•••....••••• FORTRANIV ••••••••••••••..••••.•.....•.•...... 203:161 203:162 203:163 Program Translators Extended ALGOL .••.•••••••..•••.••••••.....•.••.. COBOL 61 Extended •••.•••••.••••••••••.•...••••.•• FORTRANIV .••••••..•..•••••..•.•...••.•.••.••• 203:181 203:182 203:183 Operating Environment Drum Master Control Program .•..•..••.••...•••.••..• Disk File Master Control Program • . . • . • • . . . . • • . . • . . . . . • 203:191 203:192 System Performance General •.•••••.••.•••.••...•••..•••.•.•..•.•.•• Worksheet Data Tables •..•.•.•.••.•....•.•••••.•..•• Generalized File Processing . . . . . . . . . • • . . . • . . • . . . . . . . . Sorting . . • • . . . • • . • . . . . . • . • • . . . • . . • . . • . . . . • • . . . • Matrix Inversion • . • . . • • • • • . . • • . . . . . . . . . • . . • . . . • . . . Generalized Mathematical Processing • • . . • . • . • . . • . . . . . . . . 203:201.001 203:201. 011 203:201.1 203:201. 2 203:201. 3 203:201.4 Physical Characteristics •...•.••..•••.•.•••...•...••••..•.• Price Data •••••••••••••••••••••••.•••.•.••.•.••••..••• 203:211 203:221 A AUERBACH ~ - 203:011. 100 ~ \ "AN"'D BURROUGHS B 5500 INTRODUCTION AEDP " - AUERBAC~ I£,GRTS • INTRODUCTION .1 SUMMARY The Burroughs B 5500 Information Processing System is a medium-scale computer system that is suitable for both scientific and commercial data processing. Flexibility in the choice of system configurations results in monthly rentals that range from $16,700 to $160,000. Typical B 5500 systems, however, fall within the $20,000 to $35,000 rental range. The B 5500 system is an upgraded, improved version of the highly unconventional and imaginative B 5000 system, which was first delivered in March, 1963. Burroughs announced the B 5500 in October, 1964, as a replacement for all B 5000 systems in the field at that time, and dropped the B 5000, as such, from its product line. In most cases, field modifications permitted on-site conversion of the installed B 5000's to B 5500's. Changes in hardware have centered principally on the central processor. The processor read access time has been reduced from 6 to 4 microseconds, the execution time of many instructions has been improved, and several new and powerful operators have been added to the repertoire. Software changes included a reworked version of the Drum Master Control Program - designed to take full advantage of the expanded instruction list and a new Master Control Program that is oriented toward the use of Burroughs' highperformance Disk File. In addition, the COBOL and ALGOL compilers were refurbished to provide improved compilation times and greater efficiency in the generation of machine-language instructions. It should be noted that the B 5500 is basically a more efficient and, therefore, more productive version of the B 5000; but the B 5500 system retains all the design characteristics that made the B 5000 appear so unconventional when it was announced in 1961. Primary emphasis is still placed on the exclusive use of process-oriented languages (ALGOL, COBOL, and FORTRAN) for coding all user programs. Because of this emphasis, Burroughs has developed hardware and software that is oriented toward fast and efficient compilation, with the hope that no user will feel the need for any machineoriented languages. The B 5500 also features the capability that has come to be called multiprogramming - the ability to execute more than one independent program concurrently on the same computer system. Both the B 5500's hardware and its Master Control Program (MCP) have been designed specifically to facilitate the support of efficient multiprogramming. Benefitting from several years of experience in this area, Burroughs does not hesitate to market the B 5500 primarily on the basis of its ability to process more than one program simultaneously, leading in most cases to increased job throughput. Some of the unusual hardware facilities that have been incorporated to help achieve the B 5500's design objectives can be summarized as follows: • Automatic temporary storage for operands and subroutine parameters is provided by a "stack", which operates on the "last-in, first-out" principle. • Internal operations can be performed in either the Word Mode, upon 48-bit binary operands, or in the Character Mode, upon strings of 6-bit alphameric characters. • A common representation is used for integers and floating-point numbers. • Recursive use of subroutines is largely automatic and unrestricted. • All machine-language addressing is relative and/or indirect, facilitating program segmentation and relocation. • The same two registers are used for both indexing and arithmetic operations; no index registers of the usual type are provided. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 BURROUGHS B 5500 203:011. 101 .1 •2 SUMMARY (Contd.) • There is effective (but not infallible) storage protection against coding errors, invalid data, and inter-program interference. • Comprehensive interrupt facilities are provided to detect and service special conditions arising anywhere in the system. • Each of up to 8 core storage modules can accept or transmit data independently of the other core modules and of the processor. • Magnetic drums and/or disc files provide rapid-access auxiliary storage for the operating system, compilers, program segments, and data arrays. • All input-output operations are controlled by independent Input/Output Channels; up to four channels can be connected, and any channel can reference anyone of up to 39 peripheral devices in a system. • A second, virtually independent central processor can be added to any B 5500 system; the two processors share all storage and input-output facilities . CENTRAL PROCESSOR The B 5281 Processor of the B 5500 Information Processing System is the control center of a unique arrangement of memory and input-output control units, arithmetic units, and interrupt networks. All internal operations can be performed in either the Word Mode, using 48-bit binary words as operands, or in the Character Mode, using variablelength alphameric fields packed eight characters to the word. In the Word Mode, the central processor can perform fixed-point or floating-point arithmetic operations upon single or double word-length binary operands. A variety of logical and comparison operations is also provided in this mode. The Character Mode is designed mainly for data manipulation operations such as editing and scanning. Many processor functions, including addition, subtraction, branching, and table lookups, can be performed in either mode. A program word consists of four 12-bit "syllables", and each syllable can specify an operation, a relative address, or a literal to be placed in the stack. The Program Reference Table is a relocatable table containing single data items and 48-bit "descriptors," which are used for supplementary control and indirect addressing of data arrays, input-output areas, and program segments. The "stack" consists of the two arithmetic registers (A and B) in the central processor and a relocatable area of core storage; it provides automatic temporary storage of the "last-in, first-out" type for a list of operands and control words. In a multiprogramming environment, each program has its own stack and its own Program Reference Table. Whenever an interrupt occurs during the execution of one program, the contents of the A and B registers and all necessary control information are automatically pushed down into the appropriate stack in core storage; then the Processor transfers control to the Master Control Program, which initiates the processing of the next available program. Operands in the Word Mode are considered to be 48-bit binary words. The integer part of an operand is represented by 39 bits plus sign, and the octal exponent by 6 bits plus sign. Since the fixed-point part of a B 5500 floating-point number is represented as an integer rather than a fraction, fixed-point and floating-point operands can be intermixed without conversions. The comprehensive interrupt system informs the Processor when any of 40 possible special conditions arises anywhere in the system. All interrupt conditions are sampled continuously and processed on a priority basis, so that a high-priority interrupt condition (such as a storage parity error) can interrupt the servicing of a lower-priority interrupt condition (such as a free Input/Output Channel). The Processor of the B 5500 system initiates all peripheral input-output operations by sending a descriptor to a free I/O Channel. The processor is then free to perform its operations independently of the peripheral operation. Up to four "floating" Jnput/ Output Channels can be connected to the B 5500 system, and each Channel can transfer data between core storage and any of the connected input-output devices. Up to four input-output data transfer operations can be performed simultaneously, one per installed I/o Channel, since each I/O Channel functions independently of the others. (Contd.) 10/65 A AUERBACH ~ I NTROD UCTION .2 203:011. 200 CENTRAL PROCESSOR (Contd. ) The B 5500's Processor includes many improvements to the original B 5000 Processor design. Processor read access time - the total time required to transfer a word of information from core memory to the Processor or an I/O Channel - has been reduced from 6 to 4 microseconds. Syllable overlap techniques have been improved, stack manipulation operations have been accelerated, and 19 new operators have been added. The primary objective in the inclusion of these and other improvements in the B 5500's Processor has been to enable the compilers to generate more efficient object programs and to permit the Master Control Program to perform its program-segment switching and multi-programming control routines more quickly and more effectively • .3 INTERNAL STORAGE From three to eight B 460 or B 461 Memory Modules of core storage can be connected to a B 5500 system. Each Memory Module contains 4,096 words, providing a maximum system capacity of 32,768 words, or 262,144 6-bit characters. Each word location consists of 48 data bits and one parity bit and can hold one binary data item (in floatingpoint or integer form), eight alphameric characters, or one program word. The B 460 Memory Module has a memory cycle time of 6 microseconds, as compared with the newer B 461 's 4-microsecond cycle time. The B 460 and B 461 are functionally identical, but they cannot be intermixed in the same B 5500 system. Each core storage module contains its own addressing and read/write circuitry. Operating in conjunction with a switching network called the Memory Exchange, the Memory Modules can transmit data independently of the central processor. Both the Processor and the I/O Channels can communicate with the Memory Modules, but always through the Memory Exchange. Using the maximum B 5500 complement of two Processors and four I/O Channels, six different Memory Modules can be accessed simultaneously. However, only one processor or I/O Channel can access anyone Memory Module during anyone memory cycle. The B 430 Magnetic Storage Drum provides an 8. 3-millisecond average access time to 32,768 words of auxiliary storage. Up to 1,023 consecutive words can be transferred at the rate of 15,360 words per second. Two Storage Drums can be connected to a B 5500 system. Customers who choose to have their B 5500 system controlled by the Drum Master Control Program (see Section 203:191) must have at least one Storage Drum on-line for MCP and system program residence; two Storage Drums are required for Drum MCP-oriented installations that wish to use COBOL. Use of the Storage Drum provides the MCP with rapid access to program segments, subroutines, and blocks of data. Burroughs' head-per-track Disk Files can also be utilized as auxiliary storage with the B 5500 system. The Disk File system is a modular on-line storage system that provides storage capacities of up to 960 million characters in modules of 9.6 million characters. Any randomly-addressed block of characters can be accessed within a maximum of 40 milliseconds, and the average access time is only 20 milliseconds. Transfer of information between the Disk File system and the Input/Output Channels proceeds at an average of 100,000 characters per second. From 1 to 1,890 48-bit words of information can be read or written by a single instruction. If two B 5470 Control Units are connected to a B 5500 system, two simultaneous Disk File accesses are possible. Disk File accessing can also proceed simultaneously with computation and up to three additional input-output operations. In addition to providing the standard random processing capabilities, the use of Disk File storage with the B 5500 system permits the storage of on-line program libraries. The Disk File-oriented MCP (see Section 203:192) is thereby enabled to gain rapid access to all scheduled programs, a fact which adds to the efficiency of the B 5500's multi-programming capability . •4 INPUT-OUTPUT EQUlPMENT Most of the input-output equipment offered for use with the B 5500 computer system is conventional in design and performance. Table I lists all of the current peripheral devices (other than the auxiliary storage units described in the preceding paragraphs), together with their principal characteristics. A B 5500 system can include a maximum of two card readers, one card punch, two line printers, three paper tape units (readers or punches), 16 magnetic tape units, and 15 data communications terminal units. Four different types of data communications terminal units are offered by Burroughs for use with the B 5500 system. The B 481 Teletype Terminal Unit provides buffered interfacing for up to 399 remote Teletype stations; the B 483 Typewriter Terminal Unit can © 1965 AUERBACH Corporation and AUERPACH Info, Inc. 10/65 203:0 II. 400 BURROUGHS B 5500 TABLE I: B 5500 INPUT-OUTPUT DEVICES Type of Device Model No. Characteristics Name Card Reader Card Reader Card Reader Card Reader Card Punch Card Punch Reads 200 cpm. Reads 475 cpm. Reads 800 cpm. Reads 1,400 cpm. Punches 100 cpm. Punches 300 cpm. B 141 Paper Tape Reader B 341 Paper Tape Punch Reads 5, 6, 7, or 8-level tape at 500 or 1,000 char/sec. Punches 5, 6, 7, or 8-level tape at 100 char/sec. B B B B B 320 321 325 328 329 Line Printer Line Printer Line Printer Line Printer Line Printer Magnetic Tape Units B B B B 422 423 424 425 Magnetic Magnetic Magnetic Magnetic Data Communications Devices B 5480 Punched Card Equipment B B B B B B Punched Paper Tape Equipment Printers r-' 122 123 124 129 303 304 B 481 B 483 B 484 B 487 Tape Tape Tape Tape Prints Prints Prints Prints Prints Unit Unit Unit Unit 475 Ipmj 120 print positions. 700 lpmj 120 print positions. 700 lpmj 132 print positions. 1,040 lpmj 120 print positions. 1,040 lpmj 132 print positions. Transfers Transfers Transfers Transfers data data data data at at at at 24 or 66KC. 24KC. 66KC. 18, 50, or 72KC. Data Communications Transfers data between Processor Control Unit and Terminal Units at 30KC. Teletype Terminal Unit Controls up to 399 remote Teletype stations. Typewriter Terminal Controls up to 8 typewriter inquiry stations. Unit Controls up to 8 Dial TWX stations. Dial TWX Terminal Unit Data Transmission Provides buffering and interfacing Terminal Unit for wide variety of remote devices . •4 INPUT-OUTPUT EQUIPMENT (Contd.) .5 • 51 control up to 8 tYPewriter inquiry stationsj and the B 484 Dial TWX Terminal.regulates the use of up to 8 stations of the Dial TWX network. The B 487 Data Transmission Terminal Unit, unlike the other Burroughs terminal units, is general in purpose, permitting a B 5500 system to communicate with a varied mix of data transmission devices without the use of additional terminal units. Most remote devices that can use the lowspeed and voice-grade lines of the telephone companies can be connected to a B 487, and ultimately to a B 5500, via Burroughs line adapters. All four models of Burroughs' terminal units are buffered and can simultaneously accept inquiries from as many remote devices as their individual buffer sizes will accommodate. Buffer sizes are specified at the time of manufacture . SOFTWARE Compilers ,/ Users of the B 5500 Information Processing System normally do all of their programming in the ALGOL, COBOL, or FORTRAN languages. Two additional languages, OSIL and ESPOL, are available for special-purpose programming. OSIL, or Operating Systems Implementation Language, is a symbolic assembly language that was developed for writing Burroughs' Drum Master Control Program. ESPOL, or Executive System Problem Oriented Language, is a modified version of the ALGOL language that was designed to facilitate the writing of the Disk File Master Control Program. Extended ALGOL for the B 5500 includes virtually all of the facilities of ALGOL 60 and a number of useful machine-dependent extensions that enable the programmer to take advantage of the hardware capabilities of the B 5500. Some of these extensions include device-oriented input-output constructs, partial-word and double-precision arithmetic operations, B 5500 Character Mode statements, and constructs to control the operations of Burroughs data communications terminal units. The ALGOL compiler delivers translation speeds that range between 600 and 800 source-program cards per minute, or up to/65 A AUERBACH e (Contd. ) INTRODUCTION . 51 203:011. 519 Compilers (Contd. ) to 2500 magnetic tape card images per minute. More than 100 standard mathematical functions are included in the ALGOL library of subroutines. COBOL-61 Extended for the B 5500 is a comprehensive version of the Department of Defense's COBOL-61 Extended language. All of Required COBOL-61 has been implemented, as well as most of the Elective features of COBOL-61. Two of the three principal extensions of COBOL-61 Extended - the SORT verb and the Mass Storage language facilities - have also been implemented. (Tape or Disk File sorting on the B 5500 system, using Burroughs-supplied software, is possible only through the use of the COBOL SORT verb and the Sort Generator within the COBOL compiler.) The Mass Storage facilities provide the programmer with direct control over both sequential and random processing of records on the Disk File. COBOL language facilities are also provided to permit the effective use of Burroughs' various types of data communications terminal units. Translation speeds of up to BOO source-program cards per minute have been achieved with the COBOL compiler, and the practicality of programming and debugging exclusively in COBOL has been effectively demonstrated through more than two years of successful user experience. FORTRAN IV for the B 5500 includes virtually all of the language features proposed by the X. 3.4.3 FORTRAN group of the American Standards Association. In comparison to this standard, B 5500 FORTRAN lacks only the provisions to handle double-precision and complex variable items. Burroughs has designed its FORTRAN language to duplicate, wherever possible, the facilities of the IBM 7090/7094 FORTRAN IV language in order to facilitate conversions of scientific and engineering installations to the B 5500. Burroughs' FORTRAN translator (called FORGOL 4) converts FORTRAN IV source statements into Extended ALGOL for eventual compilatirn by the ALGOL compiler. No FORTRAN language facilities have been implemented to date by Burroughs to provide direct control of Disk File storage or remote terminal devices. Almost all program debugging on the B 5500 system is done at the source language level. MONITOR and DUMP statements are provided in the ALGOL and COBOL languages to produce tracers, dumps, and snapshots as requested by the programmer • • 52 Master Control Program (MCP) The Master Control Program, or MCP, is a comprehensive operating system that controls the scheduling, loading, and execution of every program that is run on a B 5500 system. By means of close integration with the hardware interrupt facilities of the B 5500 system, the MCP controls multiprogramming, or the simultaneous processing of two or more independent program segments. To use multiprogramming effectively with the B 5500 system, the only prerequisites are that the programs be written in small, logical segments, and that sufficient inputoutput equipment be available to service the needs of the multiple program segments. The MCP continually analyzes the list of scheduled jobs and decides, on its own, when and to what degree multiprogramming is possible. The sole criterion used by the MCP in making this decision is the continuous use of as many as possible of the processing and input-output facilitiefl of the B 5500 system. Other functions performed by the MCP include automatic handling of most error conditions, monitoring and control of communications between the system and the operator, complete logging of processing and input-output times for each program processed, and maintenance of the system and problem program libraries. Two versions of the Master Control Program are offered for use with the B 5500 system: the Drum MCP and the more recent Disk File MCP, both designated according to the system device on which the MCP and its control routines reside. The Drum MCP is slightly less flexible than the Disk MCP in that the Drum MCP lacks the facilities to control Disk File and data communications operations. In addition, the Drum MCP gathers its scheduled programs on a Program Collection Tape and scans this tape to access programs that are appropriate for inclusion in a multiprogramming mix at any given time. By contrast, the Disk File MCP has direct access to any object program stored in the on-line program library. This advantage can lead to significant improvements in multiprogramming performance under control of the Disk File MCP. It should be noted that the storage of frequently-accessed program segments on the magnetic drum will be advantageous even when the Disk File MCP is used, due to the drum's faster average access time of B.3 milliseconds. Both versions of the MCP require the permanent use of the first 1,600 words of core storage for basic control routines; other portions of theMCP are called into core storage from drum or disc storage as required. Burroughs estimates that the MCP's control functions consume between 2 and 10 per cent of the system's total processing time in typical applications; yet the improvements in throughput gained by means of MCPcontrolled multiprogramming can far overshadow the small MCP overhead time. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 203:021. 100 .&. STANDARI .IA EDP AUERBAC~ - BURROUGHS B 5500 DA TA STRUCTURE ",o",s DATA STRUCTURE .1 STORAGE LOCATIONS Name of Location Word: Row: Line: Column: Block: Block: .2 DATA FORMATS Type of Information Size Representation Purpose or Use Instruction . . . . . . . . four 12-bit "syllables" per word; each can be an operator, literal, operand call, or descriptor call. Descriptor ..•.•... 1 word; used for indirect addressing and supplementary control. Integer number . . . . . 1 word: 39 data bits + sign. Floating-point number . . . . • . . . . 1 word: 39 bits + sign for integer part, 6 bits + sign for exponent. Character .....•.•. 6 bits (internal), 1 row (tape), or 1 column (cards) • Card image . . . . • . . 4 card columns per word; 20 consecutive words per card. basic addressable 48 data bits plus 1 parity unit; holds a data item, 8 characters, bit. or 4 syllables. magnetic tape; holds 6 data bits 1 character or 1/8 plus 1 parity of a binary word. bit. Line Printer reports. 120 or 132 characters 12 positions punched cards. magnetic tape, and 1 to N Disk File in alphacharacters numeric mode. magnetic tape and 1 to 1,023 Disk File in binary words mode. ,/ 10/65 A AUERBACH ~ - 203:031.011 BURROUGHS B 5500 SYSTEM CONFIGURATION SYSTEM CONFIGURATION The upper and lower limits of on-line system configuration for the B 5500 are summarized in the following table. Max. No. Unit Min. No. B 5280 B 5281 Processor A Processor B 1 0 1 1 B 460 Memory Module (4,096 48-bit words, 6 /Lsec cycle time) Memory Module (4,096 48-bit words, 4 /Lsec cycle time) 3 8 3 8 B 430 Storage Drum (32,768 words) 0 2 No B 430 Storage Drum is required if Disk File storage is available. B 5283 Input/Output Channel 1 4 Up to 32 input/output devices can be supported. B 422 B 423 B 424 Magnetic Tape Unit (24-66KC) Magnetic Tape Unit (24KC) Magnetic Tape Unit (66 KC) 1 1 1 16 16 16 From 1 to 16 tape units per system can be supported; B 422 and B 423 units cannot be intermixed; B 422 and B 424 can be intermixed if B 422 operates at 120 ips. B 320 Line Printer 120 char) Line Printer 120 char) Line Printer 132 char) Line Printer 120 char) Line Printer 132 char) (475 lpm, 1 2 (700 lpm, 1 2 Either 1 or 2 line printers per system can be supported; B 325 and B 329 models require use of a special adapter. (700 lpm, 1 2 (1,040 lpm, 1 2 (1,040 lpm, 1 2 Card Reader Card Reader Card Reader Card Reader (200 cpm) (475 cpm) (800 cpm) (1,400 cpm) 1 1 1 1 2 2 2 2 Model No. B 461 B 321 B 325 B 328 B 329 B B B B 122 123 124 129 B 303 B 304 Card Punch (100 cpm) Card Punch (300 cpm) 0 0 1 1 B 141 Paptlr Tape Reader (5001,000 cps) Paper Tape Punch (100 cps) 0 2 0 2 Disk File/Data Communications Basic Control Disk File Expanded Control Disk File Control Unit Disk File Electronics Unit Disk File Storage Module 0 1 0 0 0 0 4 2 20 100 Data Communication Control Unit Teletype Terminal Unit Typewriter Terminal Unit Dial TWX Terminal Unit Typewriter Inquiry Station 0 2 0 0 0 0 15 15 15 120 Supervisory Printer and Keyboard 1 1 B 341 B 450 B 451 B 5470 B471 B475 B 5480 B 481 B483 B484 B493 - © Notes B 460 and B 461 modules cannot be intermixed in one system; COBOL requires a minimum of 4 memory modules. Either 1 or 2 card readers can be supported per system. Up to 3 paper tape units can be supported per system. Up to 960 million characters of Disk File storage can be supported, in modules (B 475) of 9.6 million characters. Up to 15 terminal units can be supported per system. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 203:031.100 .1 BURROUGHS B 5500 6-TAPE BUSINESS SYSTEM; CONFIGURATION m Deviations From Standard Configuration: . . . .. Disk File storage is used by Master Control Program. Core storage capacity is 10 times larger than standard. Card Reader is 60% faster. Line printer is 40% faster. Magnetic tape units are 20% slower. Equipment Rental 4 B 461 Memory Modules: 16,384 words total (4 J.lSec cycle time) $ 5,800 Disk File storage (9.6 million characters) and controllers 2,620 Processor 7,400 2 Input/Output Channels 2,500 r.----il I I I I I I j Supervisory Printer & Keyboard * B 124 Card Reader: 800 cards/min. 400 B 303 Card Punch: 100 cards/min. 450 B 321 Line Printer: 700 lines/min. 1,200 6 B 423 Magnetic Tape Units: 24,000 char/sec. 2,970· Total: $23,340 * Included in Processor rental. Note: This system also meets all requirements for Standard Configuration VI, the 6-Tape Business/ Scientific System. (Contd.) 10/65 A• AUERBACH 203:031. 200 SYSTEM CONFIGURATION .2 6-TAPE AUXILIARY STORAGE SYSTEM: CONFIGURATION V Deviations from Standard Configurations: • • • One Disk File Storage Module (9.6 million chars.) is used by Master Control Program. Core storage capacity is 10 times larger than standard. Card Reader is 60% faster. Line printer is 40% faster. Magnetic tape units are 20% slower. Equipment Rental 4 B 461 Memory Modules: 16,384 words total (4 Ilsec cycle time) $ 5,800 Disk File controllers 920 3 Disk File Storage Modules (28. 8 million characters) 3,610 Processor 7,400 2 Input/Output Channels 2,500 1-----i1 I I I I I I J Supervisory Printer & Keyboard * * B 124 Card Reader: 800 cards/min. 400 B 303 Card Punch: 100 cards/min. 450 B 321 Line Printer: 700 lines/min. 1,200 6 B 423 Magnetic Tape Units: 24,000 char/sec. 2,970 Total $25,250 Included in Processor rental. \ © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 203:031.300 .3 BURROUGHS B 5500 INTEGRATED 10-TAPE GENERAL SYSTEM; CONFIGURATION VlIA Deviations from Standard Configuration: ., Core storage is 82% larger than standard. Disk File storage is used by Master Control Program. Card reader is 60% faster. Printer is twice as fast as standard. Equipment Rental B 461 Memory Modules: 16,384 words total (4 p.sec cycle time) $ 5,800 / I Disk File storage (9.6 million characters) and controllers 2,620 Processor 7,400 4 Input/Output Channels 5,000 I I I I I I I I I .... Supervisory Printer & Keyboard B 124 Card Reader: 800 cards/min. 400 B 303 Card Punch: 100 cards/min. 450 B 328 Line Printer: 1, 040 lines/min. 1,325 10 B 422 Magnetic Tape Units: 24,000 or 66,600 char/sec. 8,000 Total * * ,/ $30,995 Included in Processor rental. (Contd.) 10/65 A. AUERBACH 203:031.400 SYSTEM CONFIGURATION .4 PAmED 10-TAPE GENERAL SYSTEM; CONFIGURATION VIIB Deviations from Standard Configuration On-line: . . . . Core storage is more than twice as large as standard. Disk File storage is used by Master Control Program. Card reader is twice as fast as standard. Off-line: . . . . Magnetic tape units are 25% slower. Multiply-Divide hardware is standard. Card reader, punch, and printer are buffered. No console typewriter is available with B 180 processor. Rental Equipment I I I ,-- --- I I I I l L:_.:J I L $ 5,800 Disk File storage (9.6 million characters) and controllers 2,620 Processor 7,400 2 Input/Output Channels 2,500 I I I I I I I 4 B 461 Memory Modules: 16,384 words total (4 J.!Sec cycle time) _-oJ Supervisory Printer & Keyboard B 122 Card Reader: * 220 200 cards/min. 8 B 422 Magnetic. Tape Units: 24,000 or 66,000 char/sec. * Included in Processor rental. © Total: Total, including off-line equipment (next page): '965 AUERBACH Corporotion and AUERBACH Info, Inc. 6,400 $24,940 $28,705 10/65 203:031. 401 •4 BURROUGHS B 5500 CONFIGURATION WB (Contd.) Off-Line Equipment (Burroughs B 180) Equipment Rental Core Storage: 4,800 characters $1,195 B 180 Processor (10 jJSec cycle time) B 123 Card Reader: 475 cards/min. 320 B 303 Card Punch: 100 cards/min. 450 B 320 Line Printer: 475 lines/min. 810 2 B 423 Magnetic Tape Units: 24,000 char/sec. 990 3,765 10/65 fA AUERBACH. ~ -1. 203:041. 100 STAND'" BURROUGHS B 5500 INTERNAL STORAGE B 460/461 MEMORY MODULES /AEDP AUERBAC~ ., REPORTS INTERNAL STORAGE: B 460/461 MEMORY MODULES .1 GENERAL .11 Identity: . . . . . • . • . • B 460 Memory Module (6-J.!sec cycle). B 461 Memory Module (4-J.!sec cycle). .12' Basic Use: ...••••• working storage. • 13 Description Each of the 4,096 word locations in a memory module holds 48 data bits and one parity bit. Therefore each location can store one singleprecision fixed-point or floating-point data item, eight alphameric characters, one 4-syllable program word, or one Program or Data Descriptor. Each memory module also contains a 12-bit Memory Address register, which holds the address of the location currently being accessed, and a 49-bit Information Buffer register, which receives each word to be stored and transmits each word that is read from storage. Working storage for B 5500 systems is provided by either B 460 or B 461 Memory Modules. The B 460 has a memory cycle time of 6 microseconds, as opposed to the newer B 461' s 4-microsecond cycle time. Except for this difference in memory cycle time, the B 460 and B 461 Memory Modules are functionally identical. However, they cannot be intermixed in the same B 5500 system. Each B 460 or B 461 Memory Module provides 4,096 48-bit words of coincident-current magnetic core memory. A minimum of three and a maximum of eight memory modules can be utilized with each B 5500 computer system, providing core storage capacities ranging from 12,288 to 32,768 words. If the COBOL language is to be used in a B 5500 installation, the minimum core storage requirement is four memory modules (16,384 words). Each individual memory module contains its own addressing and read-write circuitry. Operating in conjunction with a switching network called the Memory Exchange, a section of the B 5500 Central Control Unit, the memory modules can transmit data independently of the central processor. The effective memory read access time of the B 460 Memory Module is 3 microseconds per word; that of the B 461 Memory Module is 2 microseconds per word (or 250 nanoseconds per 6-bit character). Both the Processor and the Input/Output Channels can communicate with the memory modules, but always through the Memory Exchange. When the maximum complement of two Processors and four Input/Output Channels is connected to a B 5500 system, up to six different memory modules can be accessed simultaneously. However, only one Processor or I/O Channel can access the same memory module at the same time. The address of each word of available core storage is formed by means of a 15-bit binary field. The first three bits of the address field designate the memory module to be accessed, and the remaining twelve bits refer directly to the specific add:r:ess within the 4,096 possible addresses of the designated memory module. The selection of the designated memory module is performed by the Memory Exchange network, but the memory module itself independently locates the addressed location within its core storage. This method of memory'access contributes to the B 5500's ability to communicate with up to six memory modules simultaneously. © A parity bit is generated when a word is stored and checked when it is read out of storage. Checks are also made for invalid storage addresses and for references to segments not currently in core storage. Any of these error conditions will cause an interrupt and a transfer of control to the Master Control Program. Burroughs anticipates that the use of the 4-microsecond B 461 Memory Module, rather than the 6microsecond B 460, will improve B 5500 processing times by as much as 25%. .14 Availability: ••.•... immediate for B 460 and B 461. • 15 First Delivery: . . . • . April 1963 for B 460 . April 1965 for B 461. .16 Reserved Storage: .•. 1600 words in 1 module are reserved for most frequently-used portion of Master Control Program and are not normally available as working storage. Attempts to access this area in the Normal State cause invalid address interrupts. .2 PHYSICAL FORM • 21 storage Medium: . . . . magnetic cores . .23 Storage Phenomenon: . direction of magnetization. .24 Recording Permanence · 241 Data erasable by instructions: •••.•. • 242 Data regenerated constantly: ••..•.• • 243 Data volatile: " ••.. • 244 Data permanent: ••.. .245 Storage changeable: .• 1965 AUERBACH Corporation and AUERBACH Info, Inc. yes. no. no. no. no. 10/65 BURROUGHS B 5500 203:041.270 .27 Interleaving Levels: .. no interleaving. .5 ACCESS TIMING • 28 Access Techniques .51 Arrangement of Heads: •••.•••••. 1 access device per module. • 52 Simultaneous Operations: ••••••• each module operates independently; maximum number of simultaneous accesses is N, where N is either the number of Memory Modules or the total number of Processors and I/O Channels, whichever is smaller. .53 Access Time Parameters and Variations • 281 Recording method: •.• coincident current. .282 Reading method: •••• sense wire. .283 Type of access: ••••• uniform; read-out followed by rewrite. · 29 Potential Transfer Rates .292 Peak data rates Cycling rate: •••••• 166,667 cps for B 460. 250,000 cps for B 461. Unit of data: .••••• word. Conversion factor: •• 48 data bits per word. Data rate: ••••.•.• 166,667 words/sec for B 460. 250,000 words/sec for B 461. Compound data rate:. when 2 Processors and 4 I/O Channels each access a separate Memory Module, the B 460 transfers up to 1,000,000 words/sec and the B 461 transfers up to 1,500,000 words/sec. . .3 DATA CAPACITY .31 Module and System Size Identity: Modules: Words: Characters: Syllables: • 32 Minimum Storage Maximum Storage B 460 or B 461 3 12,288 98,304 49,152 B 460 or B 461 8 32,768 262,144 131,072 CONTROLLER .41 Identity: ••.•..•••• Central Control Unit, model B 5220 (part of B 5280 Processor). .42 .7 PERFORMANCE .72 Transfer Load Size With self: •.••.••.. 1 to 63 words. With storage drum: .•••...... 1 to 1,023 words. With Disk File: ••..• 1 to 1,890 words. .73 Rules for Combining Modules: .••••••• 3 to 8 Memory Modules per system; B 460 and B 461 cannot be intermixed. .4 • 531 For uniform access Access time: ...•.. 3 J.Lsec for B 460. 2 J.Lsec for B 461. Cycle time: •...••. 6 J.Lsec for B 460. 4 J.Lsec for B 461. For data unit of: ••. 1 word of 48 data bits and 1 parity bit. With self (via Processor): .••.•• 44,168 words/sec for B 460; 55,555 words/sec for B 461. .8 Invalid address: Receipt of data: Recording of data: Recovery of data: Dispatch of data: Timing conflicts: Connection to System check parity check interrupt. interrupt. record parity bit. parity check send parity bit . check interrupt• Connection to Device .431 Devices per controller: •••••.• 3 to 8 Memory Modules. .432 Restrictions: •.•••.. none. 10/65 ERRORS, CHECKS, AND ACTION Check or1irterlock • 421 On-line: •••.••••.. 1 Central Control Unit. • 422 Off-line: •.•••••••• none. .43 Effective Transfer Rate Physical record missing: presence check A AUERBACH ~ form· access request queue according to priority. interrupt. 203:042. 100 & SImARD BURROUGHS B 5500 INTERNAL STORAGE 8 430 MAGNETIC DRUM /AEDP - AUERBAC~ REPORTS ~ INTERNAL STORAGE: B 430 MAGNETIC DRUM .1 GENERAL .11 Identity: . • . . • . . . . . B 430 Magnetic Drum Memory. • 12 Basic Use: . . . . . . . • auxiliary storage . .13 Description The B 430 Magnetic Drum Memory (or Simply, Storage Drum) is an auxiliary storage device that provides rapid access to program segments, subroutines, and blocks of data. Up to two Storage Drums can be connected to a B 5500 system. Each drum provides 32,768 word locations of storage, arranged in 64 bands of 512 words each. At least one Storage Drum is required with each B 5500 system that is controlled by the Drum Master Control Program (MCP). Business-oriented installations using COBOL require two Storage Drums when operating in the Drum MCP environment. However, if the newer Disk File MCP is alternatively selected as the B 5500's operating system, then a Storage Drum is not essential to the B 5500 configuration. Each of the B 430 Storage Drum's 64 bands consists of 6 tracks that are read and recorded in parallel. Each word location contains eight 6bit data rows and one 6-bit parity row. The 512 words in each band are recorded in the form of 2 interleaved groups of 256 words each. Therefore, any location can be accessed within one drum revolution, but two revolutions are required to transfer a full band. Drum speed is 3,600 revolutions per minute, so the average access time is 8.3 milliseconds. Peak data transfer rate is 15,360 words or 122,880 characters per second. The B 430 is considered an input-output device, and, as such, all data transfers are performed through the Input/Output Channels. Drum read or write operations are initiated when the Processor sends an Input or Output Descriptor from the A register to an idle Input/Output Channel. The descriptor specifies the number of consecutive words (from 1 to 1,023) to be transferred between a storage Drum and a Memory Module, and the drum and core address of the first word to be transferred. ~eading or writing can start at any drum address. When a drum read or write operation is completed, the Input/Output Channel sets an interrupt bit and places an External Result Descriptor in a fixed storage location. If any of the following error conditions has occurred, it is indicated by a specific bit in the result descriptor: incorrect parity, reference to a locked area, not ready, malfunction, busy, or drum storage overflow. \ '- Protection against overwriting sections of the Storage Drum is provided by four manual switches, each capable of locking out attempted write operations within a 4, 096-word block. Drum read or write operations are not directly provided in the available B 5500 programming languages, such as COBOL, ALGOL, and FORTRAN. Instead, the Master Control Program controls the use of the Storage Drum for storing and retrieving frequently-used blocks of data and program segments. In addition, when the drum version of the MCP is used, the COBOL, ALGOL, and/or FORTRAN compilers, as well as the MCP itself, are resident on Storage Drum 1. Consequently, this storage Drum is unavailable for use by the MCP as auxiliary storage. .14 Availability: .•....• immediate. .15 First Delivery: . . . . . April, 1963. .16 Reserved Storage .161 Hardware: . . . . . . . . 4 manual lockout switches per Storage Drum protect 4, o96-word blocks of storage. · 162 Software: • . . . • . . . . the Drum MCP and its compilers reserve exclusive use of one Storage Drum. .2 PHYSICAL FORM .21 Storage Medium: . . . . magnetic drum. .22 Physical Dimensions .222 DrumDiameter: . . . . . . . . 8 inches. Length: . . . . . . . . . 22 inches. Number on shaft: ... 1. · 23 Storage Phenomenon: . magnetization. .24 Recording Permanence · 241 Data erasable by instructions: . . . . . . · 242 Data regenerated constantly: . . . . . . . .243 Data volatile: . . . • . . .244 Data permanent: ..•. · 245 Storage changeable: .. .25 yes. no. no. no. no. Data Volume per Band of 6 Tracks Words: . . . • . . . . . . . 512. Characters: . . . • . . . 4,096. Syllables: . . . . . . . . . 2,048. .26 Bands per Physical Unit: ..••.••.•.• 64. .27 Interleaving Levels: .• 2. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 BURROUGHS B 5500 203:042. 280 .28 Access Techniques • 281 Recording method: •.• fixed heads . .283 Type of access: ••••. wait for specified sector to pass under read/write heads. .29 Potential Transfer Rates .291 Peak bit rates Cycling rate:. • • • . . 3, 600 rpm. Track/head speed: ••.••..•. 1,510 inches/sec. Bits/inch/track: ..• 183 (average). Bit rate per track: .•••••... 276,480 bits/sec/track. .292 Peak data rates Unit of data: .••••. word. Conversion factor: ...••...• 48 data and 6 parity bits per word. Gain factor: ....•• {; tracks per band. Loss factor: .•.... 2 interleaving levels. Data rate: •.•.•.. 15,360 words/sec. Compound data rate: •..•••••.• 30,720 words/sec (2 drums). .3 DATA CAPACITY .31 Module and System Sizes Minimum Storage Identity: Drums: Words: Characters: Syllables: Maximum Storage B 430 1 B 430 2 32,768 262,144 131,072 65,536 524,288 262,144 .444 Input-output area lockout: . • . . . . . . . yes; program reference to a descriptor of an inputoutput area being filled or emptied causes an interrupt. . 445 Synchronization: .... automatic . • 447 Table control: . . . . . . none • .448 Testable conditions: •. parity error; reference to locked area; busy unit; not ready; core storage overflow. .5 ACCESS TIMING Stage Variation, jJ.sec Switch bands: Wait for specified sector: Read or write: o or 25 o to 16,667 65 to 66,500* 65 to 83,192 Example, jJ.sec 25 8,333 16,700 25,058 .52 Simultaneous Operations: .•...•. maximum of 1 read or write operation per drum; two drums can be accessed simultaneously. .53 Access Time Parameters and Variations .6 CHANGEABLE STORAGE: .•..•.. no. .7 PERFORMANCE .72 Transfer Load Size With Memory Modules: ..••.... 1, to 1,023 words. Rules for Combining ModUles: ••••••.• 0 to 2 Storage Drums per system. .73 Effective Transfer Rate .4 CONTROLLER .8 With Memory Modules: ...••... 15,360 words/sec or 122,880 char/sec . ERRORS, CHECKS, AND ACTION .41 Identity: .•••..•.•. Input/Output Channel, Model B 5283. • 42 Connection to System .32 Check or Interlock Invalid address: Invalid code: Receipt of data: RecordIDg of data: .421 On-line: •.••....•• 1 to 4 channels. .422 Off-line: •..•.•.••. none. .43 record parity bits. Recovery of data: parity check set bit Dispatch of data: send paritybit. Timing conflicts: "busy" check set bit Reference to locked area: check set bit Descriptor parity: check set bit Connection to Device .431 Devices per system: .••...•.• 0 to 2 drums; either drum can use any available channel; switching is performed automatically. .432 Restrictions: .••..•• none. .44 indicator. indicator. indicator. indicator. Note: All ''hit indicators" are set in the External Result Descriptor that is returned to core storage at the end of each input-output operation . Data Transfer Control .441 Size of load: •.•.•.• 1 to 1,023 words. • 442 Input-output area: ..• core storage . • 443 Input-output area access: .•••••... each word. 10/65 check set bit indicator. all codes valid. parity check. * 65 Ilsec per word transferred. A AUERBACH ~ 203:043. 100 ~ SI .." " BURROUGHS B 5500 INTERNAL STORAGE DISK FILE SYSTEM /AEDP AUERBAC~ REPORTS ~ INTERNAL STORAGE: DISK FILE SYSTEM TABLE I: SELECTED DISK FILE SYSTEM SIZES AND CONFIGURATION REQUffiEMENTS .1 GENERAL .11 Identity: . . . • . . • . . . B 450 Disk File/Data Communications Basic Control Unit. B 5470 Disk File Control Unit. B 451 Disk File Expanded Control. B 471 Disk File Electronics Unit. B 475 Disk File Storage Module. .12 . 13 Basic Use: . . . • . . . . random-access auxiliary storage. Description The Burroughs B 5500 Disk File System is a largecapacity random-access storage facility that provides the capability to store up to 960 million 6-bit characters and to access any selected block of characters within an average of 20 milliseconds. The high data capacity and fast access time of the Disk File System result largely from high-density recording and a fixed read/write head for every data track. Electronic switching between tracks in place of movable access arms contributes to the improved speed and reliability of the B 5500 Disk File System. The B 450 Disk File/Data Communications Basic Control Unit serves as an interface between the B 5500 and up to two B 5470 Disk File Control Units or B 5480 Data Communication Control Units. The B 5470 Disk File Control Unit is the control center for the B 5500 Disk File System; it regulates the transfer of 48-bit words of data to and from the Input/Output Channels. Since the B 5500 system can accommodate two independently-operating B 5470's, two simultaneous Disk File accesses are possible. Disk File access can also proceed simultaneously with computation and with three additional input-output operations. Each B 5470 Disk File Control Unit contains the control and checking circuitry to support up to 480 million characters of data. The B 5470 controls from one to ten B 471 Disk File Electronics Units, and each Electronics Unit contains the circuitry to control from one to five B 475 Disk Storage Modules. Each Storage Module contains four magnetic discs that together provide storage for up to 9.6 million characters of data, the smallest available unit of Disk File storage. The B 451 Disk File Expanded Control is required when on-line Disk File storage exceeds 48 million characters. Up to four B 451's can be required, one for each additional block of 240 million storage locations that is included in the Disk File system. Table I shows the potential B 5500 Disk File System" sizes and the configuration requirements for each size. © Disk File System Components Size in Millions of Characters B 475 9.6 4B 96 240 4BO 960 1 5 10 25 50 100 B471 1 1 2 5 10 20 B 451 0 0 1 1 2 4 B 5470 1 1 1 1 1 2 B 450 1 1 1 1 1 1 The following is a breakdown of the storage capacities of the Disk File system components: • Segment - contains 240 6-bit characters or 30 48-bit words; it is the smallest addressable area of Disk File storage. • Data Track - contains up to 24,000 characters, divided into 100 segments. • Disc Face - contains 50 data tracks. (Both disc faces are used for data storage.) • Storage Module - includes 4 verticallymounted discs on one horizontal shaft. Each Storage Module contains 9.6 million character locations. • Electronics Unit Modules. controls 1 to 5 Storage • Control Unit - controls 1 to 10 Electronics Units, providing from 48 to 480 million character locations of disc storage. • Basic Control - Supports the B 5500 system maximum of two Control Units. The magnetic discs rotate at 1500 rpm, and since no repositioning of the read/write heads is required, the maximum access time to any data record is 40 milliseconds (one disc revolution) and the average is 20 milliseconds. One situation in which the average access time is greater than 20 milliseconds is that of updating a record in a non-sequential file. This operation requires two accesses (to read the original record and then rewrite the updated version); but the second access is not a random reference and will often cost almost a full revolution (40 milliseconds). Thus, the average access time for file maintenance operations will be about 30 milliseconds. No timing synchronization between different Storage Modules is possible; this prevents attempts to optimize programming by minimizing disc latency. Transfer of information between the Disk File system and the Input/Output Channels proceeds at an average rate of 100,000 characters per second. Data transfers are executed as 8-character, 48-bit 1965 AUERBACH Corporotion ond AUERBACH Info, Inc. 10/65 BURROUGHS B 5500 203:043. 130 . 13 Description (Contd.) .14 Availability: . . . . . . . immediate . words that are assembled in the B 5470 Control Unit. From 1 to 1,890 words (63 segments) of information can be read or written by a single instruction. · 15 First Delivery: . . . . . 3rd quarter of 1964. · 16 Reserved Storage: ... the Disk File MCP reserves use of 1,000 segments of Storage Module 1; a manual lockout switch can prevent access to each disc. .2 PHYSICAL FORM .21 Storage Medium: .••. multiple magnetic discs. · 22 Physical Dimensions Disk File segments are addressed through the B 5470 Control Unit by means of a 7-character address. The first character designates the Storage Module to be accessed, and the remaining six characters designate the segment address. Segment addresses are assigned starting at some point on the first disc surface of a Storage Module and continuing in direct sequential order through the 40,000 segments of the module. The validity of each Disk File Address is checked by the Control Unit prior to any transfer of data. Detection of an invalid address terminates execution of the Disk File instruction and sets a specific error indicator in the appropriate I/O Result Descriptor. A "check character" is generated in the B 5470 Control Unit and recorded with each 48-bit data word. This check-character code is automatically regenerated and compared with the code read from the disc during every read operation or during a special Disk File Check operation. If the checkcharacter comparison is unequal, a special error bit is set in the Disk File Result Descriptor. Burroughs Corporation does not emphasize the use of the programmed read-after-write check for two reasons: first, the readback-and-check operation can triple the time normally required to. write a segment of data; and second, the reliability of the head-per-track Data File design is allegedly high enough to render such a checking operation unnecessary. Instead, Burroughs recommends, in some situations, a simultaneous tape write-out of the data recorded on the Disk File. A number of physical precautions are taken to safeguard the information on the discs: .222 Disc Diameter: . . . . . . . . 26. 5 inches. Thickness or length: . 0.125 inch. Number on shaft: ... 4 (shaft is horizontal). .23 Storage Phenomenon: . direction of magnetization. · 24 Recording Permanence .241 Data erasable by instructions: . . . . . . .242 Data regenerated constantly: . . . . . . . .243 Data volatile: . . . . . . . 244 Data permanent: . . . . .245 Storage changeable: .. .25 no. no . no. no. Data Volume per Band of 1 Track Words: . . . . . . . . . . . Characters: . . . . . . . Digits: . . . . . . . . . . . Instructions: . . . . . . . Segments: . • . . . . . . . .26 yes. 3,000. 24,000. 24,000. 12,000. 100. Bands per Physical Unit: . . . . . . . . . . . 50 per disc surface. • The head design is such that if the heads approach the discs too closely, a fail-safe technique moves .27 Interleaving Levels: .. 1. the heads away and switches the unit off. .28 Access Techniques • The heads are embedded in a soft material so that .281 Recording method: ... every track on each disc the discs will not be damaged if the heads come surface has an individual, into contact with the discs. fixed head . . 283 Type of access: ...•. wait for selected segment • Each individual disc has its own manual lockout for reading or recording; circuits which can prevent it from being written no repositioning of access upon, while allowing reference to its contents. mechanisms is involved. Programming of the Disk File system with the B 5500 is made possible by special language con· 29 Potential Transfer Rates structs provided in the ALGOL and COBOL compilers. (Report Sections 203: 161 and 203: 162 .291 Peak bit rates describe these language facilities.) The Disk File Cycling rates: . . . . . 1,500 rpm. Master Control Program makes use of the Disk Bit rate per track: .. 700,000 bits/sec/track. File's high storage capacity for storing all its con.292 Peak data rates trol programs and language compilers, as well as Unit of data: . . . . . . word. all the programs in the installation's library. The Conversion factor: .. 48 bits plus parity bit. Disk File's relatively fast access time permits the Gain factor: . . . . . . 1 track/band. MCP to make all programs and on-line data blocks Data rate: . . . . . . • . 12,500 words or 100,000 available quickly for use by the problem program. characters per second. (Contd. ) 10/65 fA. AUERBACH ~ / INTERNAL STORAGE: DISK FILE SYSTEM .3 DATA CAPACITY .31 Module and System Sizes 203:043.300 Maximum Storage Minimum Storage Identity: Discs: Words: Characters: Instructions: Modules: o o o o o B 475 Disk File Storage Module 4 1,200,000 9,600,000 4,800,000 1 .53 .4 CONTROLLER •6 CHANGEABLE STORAGE: . . . . . . . none . • 41 Identity: ..•.••.... B 5470 Disk File Control Unit. .7 AUXILIARY STORAGE PERFORMANCE .42 Connection to System .72 Transfer Load Size .43 .73 Connection to Device . 431 Devices per controller: ..•.•.. 1 to 10 Electronics Units. . 432 Restrictions:...... . refer to Table I. . 44 Data Transfer Control .441 Size of load: .••.... 1 to 63 240-character segments, or 1 to 1,023 words. . 442 Input-output area: .. , core storage. .443 Input-output area access: ..•...••. each character. .444 Input-output area lockout: . . . • . . . . • none. • 445 Synchronization: . . . . automatic. .446 Synchronizing aids: .. none. .447 Table control: .•.•.. none. .448 Testable conditions: .• busy controller; recording lock; recovery error; transfer error; address error. Access Time Parameters and Variations Stage Variation Average Positioning: Latency (rotational delay): Total: 0 O. .5 ACCESS TIMING .51 Arrangement of Heads: one read-write head per track. .52 Simultaneous Operations: • • . . . . . only one Disk File operation at a time per B 5470 Control Unit can be performed. © msec. msec. 20 msec. 20 msec . Effective Transfer Rate With core storage: .•. 80,000 char/sec • .8 ERRORS, CHECKS AND ACTION Error Check or Interlock Invalid address: check Receipt of data: Recording of data: Recovery of data: Dispatch of data: \ o to 40 o to 40 With core storage: .•. 1 to 63 segments; number of segments is selected by program . .421 On-line: . . . . . . . . . . lor 2 B 5470's. . 422 Off-line: ..•••....• none. I \ B 450 Disk File Basic Control 400 120,000,000 960,000,000 480,000,000 100 (max.) Rules for Combining Modules: ....•.••• 1 or 2 Control Units can be used per B 5500; 1 to 10 Electronics Units can be connected to each Control Unit; 1 to 5 Storage Modules can be connected to each Electronic Unit. .32 i B 471 Disk File Electronics Unit 20 6,000,000 48,000,000 24,000,000 5 (max.) Timing conflicts: Reference to locked area: 1965 AUERBACH Corporation and AUERBACH Info, Inc. Action error indicator set, operation terminated . parity check indicator set, on addresses operation terminated, no data transferred . optional proset indicator. grammed readback regenerate set indicator. and compare check character parity bit inbranch. cluded; notready check interrogate branch on busy, command error, or write interlock. check indicator set, operation terminated. 10/65 -&. 203:051. 100 STANDARD /AEDP - 'UER.'C~ BURROUGHS B 5500 CENTRAL PROCESSOR maRTS CENTRAL PROCESSOR .122 States, Levels, and Modes .1 GENERAL · 11 Identity:... . . . . . . . B 5280 Basic System B 5220 Central Control; B 5281 Processor; B 5282 I/O Subsystem; B 5290 Display and Distribution; B 5370 Power Supply. • 12 Description • 121 Summary The B 5281 Processor of the B 5500 Information Processing System represents an upgraded, improved version of the central processor originally supplied with the Burroughs B 5000 systems. Production of the older processors has ceased, and all processors in the field have been modified to include the improved performance features of the B 5281 Processor. All existing B 5000 systems have thus been transformed into B 5500's. Paragraph .129 below enumerates several changes that have been incorporated into the design of the original central processors. One or two functionally independent Processors can be included in a B 5500 system. Access to instructions and data in the B 460 or B 461 Memory Modules is accomplished through the Memory Exchange of the Central Control - a general switching network. All information transfers between the Processor and Memory Modules are made in units of 48-bit words. Internal operations can be performed in either the Word Mode, using 48-bit binary words as operands, or in the Character Mode, using variable-length alphameric fields packed eight characters to the word. In the Word Mode, a common representation is used for floating-point and integer numbers, so conversion routines are not required. Complete arithmetic facilities for single and double-length operands are provided in the Word Mode. The Character Mode is designed mainly for data manipulation operations such as editing and scanning. Instructions are 12-bit "syllables," packed four per program word. Each syllable specifies an operation, a relative address, or a 10-bit literal. Processor fetch overlap is provided to mask the access to successive instruction syllables and words with the execution of the current syllable. "Descriptors" are 48-bit words used for indirect addressing and supplementary control; they, along with single operands, are stored in a relocatable core storage area called the Program Reference Table. The "stack" consists of two Processor registers and a reserved area of core storage, and provides temporary storage for an ordered list of operands and control words. The Processor will at all times operate in either the Normal or Control State, in either the Program or Subprogram Level, and in either the Word or Character Mode. Operation is in the Normal State except when a bit is set in the Interrupt Register to indicate that a special condition has arisen in the system. Then the Processor enters the Control State to deal with the interruption. Certain operations can be performed only in the Control State; these are listed in the Instruction List, Section 203:121. The Program Level is the level in which a user's main program operates. Whenever the program calls upon a subroutine, the Processor switches automatically to the Subprogram Level. In the Program Level, direct reference can be made only to the top operand in the stack and to the Program Reference Table. The Subprogram Level permits direct reference to other stack locations, enabling the stack to be used for subroutine parameters and working storage. In both levels, reference can be made to elements of data arrays in core storage through the use of Descriptors (see Paragraph .123). Subroutines can be nested, and a subroutine can call itself recursively. The level of nesting is limited only by the capacity of the stack. Before entering a subroutine, the original contents of the stack are marked, and all necessary parameters are loaded onto the top of the stack. Then a reference to the subroutine's Program Descriptor in the PRT causes placement of a return control word in the stack, effects entrance to the Subprogram Level, and transfers control to the first location of the subroutine addressed by the descriptor. In the Word Mode, operands are considered to be 48-bit binary words. A parallel binary adder is used for arithmetic and comparison operations. The integer part is represented by 39 bits plus sign, and the octal exponent by 6 bits plus sign. Since the fixed-point part of a floating-point number is an integer rather than a fraction, fixed and floating-point operands can be intermixed without conversion, and numbers ranging from 10- 46 to 10+69 can be represented. Each program word consists of four 12-bit "syllables," and in the Word Mode each syllable can specify an operation to be performed, a 10-bit literal, or the address (relative to the start of the Program Reference Table) of an operand or descriptor. These functions are described in more detail in the Instruction List, Section 203:121. In the Character Mode, each data word consists of eight 6-bit alphameric characters. All operations © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 BURROUGHS B 5500 203:051. 122 .122 States, Levels, and Modes (Contd.) stack; the process is the reverse of the push-down procedure just described. The address in the S register is automatically incremented by one befor~ each push-down 9peration and decremented by one after each push-up. Each push-down operation requires 3 microseconds and each push-up requires 5 microseconds. The A and B registers have flipflops which indicate the presence or absence of information, and push-ups and push-downs are performed only when necessary. The automatic temporary storage provided by the stack can significantly reduce the number of explicit fetch and store operations required in a program . are performed serially by character, and fields of up to 63 characters can be handled in a single operation. Although decimal addition and subtraction operators are included, the Character Mode is intended primarily for editing, scanning, comparison, and general data manipulation. Each Character Mode program syllable consists of a 6-bit repeat field and a 6-bit operation code. Functions of the Character Mode operators are described in the Instruction List, Section 202:121. • 123 Descriptors A descriptor is a 48-bit word used for indirect addressing and/or for supplementing the program syllables in controlling the Processor's internal functions. A Program Descriptor specifies the size (up to 1,023 words) and current locations in both core and auxiliary storage of a program segment. A Data Descriptor specifies the base address of a data array or input-output area; this address can be indexed to locate a specific item in the array. If the address formed by indexing a Data Descriptor exceeds the array size limit (up to 1,023 words) specified in the descriptor, an interrupt occurs. This is a fairly effective means of automatic storage protection against coding errors and invalid data. Data Descriptors are also used to initiate all input-output operations. The general layouts of both Program and Data Descriptors are shown in Paragraphs. 232 and. 233 of this report section. When multiprogramming is performed in a B 5500, each program has its own stack. Whenever an interrupt occurs, the contents of the A and B registers and all necessary control information are automatically pushed down into the appropriate stack in core storage before the Processor enters the Control State. The Master Control Program allocates storage to each stack, as well as to the Program Reference Table, program segments, data arrays, and input-output areas of each program. If the capacity of any program's stack is exceeded, an interrupt occurs, and the Master Control Program causes an error message to be printed and terminates the job. .126 Interrupts A comprehensive interrupt system is provided to inform the Processor when special conditions arise anywhere in the system. The occurrence of anyone of 40 interrupt conditions causes a specific bit to be set in the Interrupt Register. Depending upon the nature of the interrupt condition, execution of the current program syllable may be completed or terminated immediately. Then the A and B registers and all necessary control information are pushed into the stack, the address of the associated interrupt handling routine is placed in the Interrupt Address Register, the Processor enters the Control State, and control is transferred to the Master Control Program for initiation of the required action. .124 Program Reference Tables (PRT) The PRT is a relocatable core storage area of up to 1,023 words. One PRT is required for each program that is running simultaneously in a B 5500 system, including the Master Control Program. The PRT is'used primarily for storage of Program and Data Descriptors, but it may also contain single operands such as counts and index values. The R register contains the base address of the PRT for the program being executed. The program syllables contain no direct addresses, but only 10-bit relative addresses which are added to the contents of the R register to access descriptors or operands anywhere in the PRT. The facts that the PRT is relocatable and that only relative addresses are used in program segments assure complete program relocatability and facilitate operation of the Master Control Program. All interrupt conditions are sampled continuously by the hardware andprocessed on apriority basis , so a high-priority interrupt condition (such as a storage parity error) can interrupt the servicing of a lower-priority interrupt condition (such as a free Input/Output Channel). For a detailed description of the interrupt facilities, see Paragraph. 33 of this report section . • 125 Stacks .127 Dual Processors The stack is a list of operands and control words which are stored temporarily in the sequence in When two Processors are included in a B 5500 syswhich they are to be processed. Physically, the tem, true multiprocessing is possible. The two stack consists of the Processor's A and B (arithmeProcessors share the same Memory Modules, tic) registers and an area of core storage addressed Input/Output Channels, and peripheral devices, by the S register. The stack operates on the "last but each Processor contains all the control and in, first out" principle. An operand fetched by a arithmetic facilities and operating registers program is placed in the A register; the prev:ious contents of the A register (if any) are pushed down required for independent program execution. Furthermore, through use of the interrupt facilities into the B register; and the previous contents of the and the Master Control Program, each of the two B register (if any) are automatically transferred to Processors can effectively control multiprogramming the storage location addressed by the S register. operations. It is important to note, however, that Push-up operations are automatically performed only Processor 1 can operate in the Control State. Consequently, if an interrupt occurs in Processor 2, when an operator requires information from the 10/65 A (Contd.) AUERBACH ~ / 203:051. 127 CENTRAL PROCESSOR Input/Output Channel - has been reduced from 6 to 4 microseconds. Syllable and word fetch-overlap techniques have been improved, and the execution times of the most frequently-used operators have been reduced. For example, the execution time of the logical AND and logical OR operators has been reduced from 17 to 3 microseconds. In addition, stack adjustment times have been improved, permitting push-down operations to be performed in 3 microseconds instead of 4, and push-up operations to be performed in 5 microseconds instead of 8. . 127 Dual Processor (Contd.) Processor 1 is forced to halt its processing in order to handle Processor 2's interrupt. By contrast, Processor 2 will be unaffected by interrupt conditions occurringinProcessor 1. Either Processor Module (A or B) can be logical Processor 1, depending upon the setting of a Console switch. .128 Performance The performance of the B 5500 Processor is summarized in Paragraphs. 41 and. 42 of this section. Average times for the basic instructions are listed in Paragraph. 41, and times to perform the standard central processor tasks are listed in Paragraph. 42. In general, times for arithmetic, logical, and switching operations are based on use of the Word Mode with one-word operands, while times for format control are based on the Character Mode. Where either the Word or Character Mode can be used effectively, as in table lookups, both times are listed. There are usually numerous ways of coding a given task for the B 5500, and timing of internal operations is complex. The times listed here are for coding similar to that produced by the Extended ALGOL translator. Nineteen new operators have been added to the instruction repertoire to speed up Master Control Program functions such as automatic storage allocation and program segment overlay control. Time-consuming algorithms f.ormerly required to switch from Word Mode to Character Mode have been completely eliminated. It is now possible to embed Character Mode coding directly in-line with Word Mode coding. All of these improvements in the Processor's logic design have been added to enable the compilers to generate more efficient object programs and to permit the Master Control Program to perform its program-segment switching and multiprogramming control routines more quickly and more effectively . . 129 Processor Improvements The Processor used in B 5500 systems includes many improvements to the original B 5000 Processor design. Processor read access time the total time required to transfer a word of information from memory to the Processor or to an .2 PROCESSING FACILITIES . 21 Operations and Operands .211 .212 .213 .214 Operation and Variation Fixed point Add-subtract Word Mode: Character Mode: Multiply Short: Long: Divide No remainder: Remainder: Floating point Add-subtract: Multiply: Divide: Boolean AND: Inclusive OR: Equivalence: Negate: Comparison Numbers: Absolute: Letters: Mixed: Collating sequence: .13 Availability: . . . . . . . immediate. .14 First Delivery: . . . . . April 1963 for B 5000 Processor. December 1964 for B 5500 Processor . Provision Radix Size automatic automatic binary decimal 39 or 78 bits and sign. 1 to 63 digits. automatic none. binary 39 or 78 bits and sign. automatic* none* 39 or 78 bits and sign. automatiC} automatic binary automatic 39 or 78 bits for fraction; 6 bits for exponent. ootomatic} automatic . automatic automatic binary 47 bits. ~tom.tic } no~e. 1 full or partial word, automatic or 1 to 63 characters. automatic see Data Code Table, Section 203:141. * Either quotient or remainder can be retained, but not both; singlelength division is rounded. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 BURROUGHS B 5500 203:051. 215 .215 Code translation: .216 Radix conversion: Provision none. automatic From To Size decimal binary automatic binary decimal 1 to 8 dec. digits. 1 word. · 217 Edit format: . . . . • . . no automatic facilities; editing is accomplished by strings of program syllables in the Character Mode. • 218 Table lookup: •...•. the Link List Lookup operator compares the contents of the A register to a linked list of data; a ~ condition sets the A register to the address of the "found" data item. .219 Others: . . . . . . . . . . see Instruction List, Section 203:121. · 22 Special Cases of Operands · 221 Negative numbers Word Mode: ....•. absolute value with sign bit of 1. Character Mode: ... absolute value, with zone bit of low-order character used as sign. .222 Zero: • . . . . . . • . • . +0 and -0; no difference in arithmetic or comparisons. · 223 Operand size determination: ..•.. fixed at 1 or 2 words in Word Mode; variable from 1 to 63 characters (specified by repeat field) in Character Mode. .23 Instruction Formats .231 Instruction structure: • four 12-bit syllables per word. .232 Instruction layout Word Mode Syllable: Op. code or data Syllable type 10 2 Character Mode Syllable: Op. code Repeat field 6 6 .233 Instruction parts Purpose Name Syllable type: .•... denotes whether a Word Mode syllable is an operator, literal, Operand Call, or Descriptor Call. Op. code or data (Word Mode): ••.• (1) specifies operation to be performed upon data in A and/or B register; or (2) specifies a 10-bit literal value to be placed in A register; or (3) specifies the address (when modified by contents of R register) of an operand or descriptor to be placed in the A register and examined. Op. code (Character Mode): • specifies operation to be performed. Repeat field: . . . . . . specifies number of times (up to 63) the operation shall be repeated; or a 6-bit literal character. .2331 Descriptor partsName Purpose Flag: . • • . . . . . . denotes type of word: descriptor or operand. I/D: ...•••.•.. denotes type of descriptor. Presence: ..•..• denotes whether program segment or data is in core storage. Mode: .••....• denotes Word or Character Mode syllable. Parameter: . . . . . indicates that parameters are required for the program segment. Size: . . . . . . • . . number of words in segment, array, or input-output load. Drum or disc address: •...• drum or disc location of segment. Core address: .. core location of first word of a segment, array, or input-output area. Unit: . . . . • . . . • input-output device designation. Control: ••. ~ •.• detailed specifications for input or output operation, error indications or drum address. Program Descriptor: Disc/Drum address 15 Core address 15 Data and Input-Output Descriptors: I Name l FlagJ I Size (bits) I 10/65 1 J I/D 1 I Presence I 1 Unit 5 I Size I 10 Control Core address 15 15 A (Contd.) AUERBACH ~ CENTRAL PROCESSOR 203:051. 234 . 234 Basic address structure: . . . . . . . . . . . one lO-bit address per Operand Call and Descriptor Call syllable; no address is specified in an Operator syllable. .235 LiteralsWord Mode Character Mode Arithmetic:. . . . . .• 10 bits none. Comparisons and tests: . . . . . . . . . 10 bits 1 character. Incrementing modifiers: . . . . .. 10 bits none. .236 Directly addressed operands Internal storage type: core. Minimum size: . . . . 1 word. Maximum size: .... 63 words. Volume accessible: .1,024 words. Increased address capacity: . . . . . . . 32,786 words, using indexing and/or indirect addressing as described in following entries. . 237 Address indexing .2371 Number of methods: .3. .2372 Names: . . . . . . . . . R-register indexing (occurs whenever a program syllable is an Operand Call or Descriptor Call). B-register indexing (occurs only when the word brought to the A register by R-register indexing is found to be a Data Descriptor for an array, or when the "index" operator is executed). R/F-register indexing (occurs when a "store" operator is given and the A register contains an operand. .2373 Indexing rules R-register indexing: add the 10 high-order bits of the Operand Call or Descriptor Call syllable to the contents of the R register and store the resulting address in the M register; bring the word found at this address to the A register. B-register indexing: add the 10 low-order bits of the B register's contents to the 15 low-order bits of the Data Descriptor in the A register. R/F - Register indexing: ..•.••. add the 10 low-order bits of the operand in the A register to the contents of the R register (if, in Program Level) or the F register (if in Subprogram Level); store contents of B register at the resulting address. .2374 Index specification: .. none required; see. 2372 above. . 2375 Number of potential indexers: ....•.• 3: R, B, and F registers. .2376 Addresses which can be indexed Application Type of Address Descriptors and operands in Program Reference Tab~, using Rregister indexing: .•..• facilitates relocation of programs. Data items in arrays, using Bregister indexing: •...• specifies particular element of an array whose base address is in the Data Descriptor. Temporary storage areas for subroutines, using F register indexing: facilitates dynamic storage allocation and recursion. .2377 Cumulative indexing:. when an Operand Call syllable references a Data Descriptor, R and Bregister indexing occur successively. .2378 Combined index and step: . . . • . . . . . . no • • 238 Indirect addressing · 2381 Recursive: .•..••. no. · 2382 Designation: ...••• occurs automatically whenever an Operand Call syllable references a Data Descriptor: contents of the location specified by the descriptor, indexed by contents of the B register, are brought into the A register. · 2384 Indexing with indirect addressing: B-register indexing occurs after indirect addressing; see. 2382 above. .239 Stepping: . . . . . . . . . R register, in Character Mode only. .2391 Specification of increment: . . . . . . in repeat field of the "increase tally" syllable. .2392 Increment sign: . . . . always positive. .2393 Size of increment: .• 0 to 63. · 2394 End value: . . • • . . . . no direct test available. · 2395 Combined step and test: . . . . . . . . . . no. · 24 Special Processor Storage Register Size in Bits Name P 48 C 15 T 12 Word Mode Usa~e Character Mode Usage holds program same as Word Mode. word being processed sequence counter; same as Word Mode. contains address of next program word holds program syl- same as Word lable being. Mode. executed © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 203:051. 240 . 24 BURROUGHS B 5500 Special Processor storage (Contd.) Register Size in Name Bits L 2 A 48* M 15 G 3 .31 .311 .312 . 313 .314 Character Mode Usage denotes position in word in P of the syllable in T; overflows into C arithmetic register; top location in stack address of storage location associated with A register generally not used same as Word Mode. source register for data to be edited. same as Word Mode. addresses a character within the A register; overflows into M. generally not used addresses a bit within the character addressed by G. arithmetic register; destination regissecond location ter for edited in stack data. address of storage same as Word location associMode. ated with B register generally not used addresses a character within the B register; overflows into S. generally not used addresses a bit within the character addressed byK. contains stack same as Word Mode. location where subroutine return point is stored contains base loca- tally register for tion of Program counting. Reference Table extension of A or contains a loop conB register trol word. .32 Look-ahead: .•..••. fetch of next syllable and program word is accomplished during execution of current syllable. . 33 Interruption .331 Possible causes I/O units: . . . . . . • . unit free, error, malfunction, end of file, write lockout. 48* B I/O controllers: .... channel free. Storage access: .... drum or disc write lockout, parity error, malfunction, S 15 stack overflow, invalid address, flag bit (end of a K 3 data array), presence (reference to information not in core storage). Processor errors: •. integer overflow, exponent V 3 overflow, exponent underflow, division by zero, invalid index. F 15 Other: •.•..••.•• time interval, keyboard request, Processor B busy, program release (I/O area free to receive or R 9 transfer data), continuity bit (designating multiple I/O areas). X 39 .332 Control by routine: ... none; all possible interrupts are sampled continuously * A and B registers have associated one-bit flip-flops and simultaneously, and to indicate the presence or absence of data. they are processed acNote: There are other Processor registers which serve cording to a fixed priority specific logical functions; only the registers list. directly associated with Word and Character • 333 Operator control: . .•. none; see. 332 above. Mode operations are listed here. .334 Interruption conditions: .•.....•. none; see. 332 above • SEQUENCE CONTROL FEATURES .335 Interruption process Disabling interInstruction Sequencing ruption: ••••• . . • automatic; Processor enters Control State, and further Number of sequence interruptions set Intercontrol facilities: •.. 1. rupt Register bits which Arrangement: . . . . . . 1 sequence counter per remain set until interProcessor (C register). rogated . Precedence rule: . . . . when 2 Processors are Registers saved: ••• B register, A register used, they operate CN ord Mode only), and independently. specially-formed control Special sub-sequence counters words containing the Purpose Name settings of registers M, L register: . . . . . . . specifies which syllable of R, C, F, K, V, G, L, word in P register is being and S; all are pushed into El'xecuted; overflows into the stack. C register. Destination: ..•••• enter Control 5~ate and transG, H registers: •.. locate individual character fer to fixed location. and bit of word in A register. K, V registers: ... locate individual character and bit of word in B register. (Contd. ) H •3 Word MOde Usage .315 Sequence control step size: . . . . . . . . 1 word for C register; 1 syllable for L register. .316 Accessibility to routines: ...••... contents of C and L registers can be stored and reloaded by instructions. .317 Permanent or optional modifier: .. no. 10/65 3 fA AUERBACH s ./ 203:051. 336 CENTRAL PROCESSOR . 336 Control methods Determine cause: ••. "interrogate Interrupt Register" instruction transfers control to location corresponding to the interrupt bit that is set. Enable interruption: • automatic when control is returned to Normal State. • 34 Multiprogramming • 341 Method of control: ••• interruption and/or two separate Processors; usually controlled by Master Control Program (MCP). • 342 Maximum number of programs: .•.•••. limited by hardware and program requirements . • 343 Precedence rules: •.. assigned priorities. .344 Program protection Storage: ..••••••. storage areas are assigned by Master Control Program. There is no positive protection, but an interrupt occurs if a data address formed by indexing exceeds the area assigned the array by the Data Descriptor, or if a referenced program segment or data array is not present in core storage. I/O units: •.•••••• assigned by Master Control Program; no positive protection. Maximum separate sets: . . . . . . . . . . limited by system configuration. . 35 .413 Additional allowance for Recomplementing: .. 2. Indexing: " .•.••. see Paragraph .419. Loading of registers: see Paragraph .419. .414 Control: Word ModeCompare: .••••. 2. Branch: .••.•••. 5. Character Mode Compare: • . . • . . . 10+3C • Branch: •.•.••.. 9 to 20 • .415 Counter control (Character Mode) Step: . . . . • • . . . . . 2 to 62. Test: . . • • • . . . . . . 2 to 10. .416 Edit: . . . . . . . . . . • • no automatic facilities. .417 ConvertDecimal to binary: .• 37 + 2D • Binary to decimal: .• 43+2D. .418 Shift: • . . • • . • . . . . . no automatic facilities. .419 Others: Fetching an operand Single value from PRT: .••••.... 5. Single value, using descriptor: ••••• 10. Array element, using descriptor: • 11 minimum. Storing an operand Single value into PRT: ..•.••.•• 3. Single value, using descriptor: ••.•• 3. Array element, using descriptor: • 13 minimum. Fetching a program word: •.•••••••• 4. Note: fetch time is completely overlapped if execution time of last syllable in preceding word exceeds 4 J),sec • Multisequencing: ••.. possible when two Processors are used, but the facility is not incorporated into the Master Control Program. .36 Multiprocessing: .•.• maximum of 2 independent Processors per system. .4 PROCESSOR SPEEDS* .41 Instruction Times in Microseconds All B 5500 Processor timings in this report assume the use of B 461 4-microsecond Memory Modules, currently the standard memory units with B 5500 systems. C = operand length in characters. D = operand length in decimal digits. © o. Stack adjustment Push-down: .••••• 3. Push-up: ..•••.• 5 . .42 .411 Fixed-point (average) Single length Double length Add- subtract Word Mode: 1 15 Character Mode: 13 + 4D Multiply: 32 133 Divide: 36 159 .412 Floating-point (average) Single length Double length Add-subtract: 4 24 Multiply: 32 133 Divide: 36 159 * Fetching a program syllable: •••••••• Processor Performance in Microseconds .421 For typical tasks Fixed point Floating point All operands and results in core storage c = a + b: b = a + b: Sum N items, per item: c = ab: c = alb: 17 17 17 17 7 44 76 7 44 76 All operands and results in optimum stack locations c = a + b: • • • 2 b = a + b: 2 Sum N items, per item: 7 30 c + ab: c = alb: 61 1965 AUERBACH Corporation and AUERBACH Info, Inc. 2 2 7 30 61 10/65 BURROUGHS B 5500 203:051. 422 • 422 For arrays of data Fixed point 85 85 .423 .424 .425 .426 .427 c. = ai +b.: bj = ai + b~: Sum N ite~s, per item: 56 c = c + aibj: 112 Branch based on comparison (Word Mode) Numberic data: ••. 114. Alphabetic data: •.• 114. SWitching (Word Mode) Unchecked: ••••••• 39. Checked: ••..•••• 66. List search: .••••• 16 + 50N. Format control, per character: Unpack Mathematical: . . . . 18. Commercial: ...•• 9. Compose Mathematical: ..•. 23. Commercial: ••..• 37. Table lookup, per comparison: Word ModeFor a match: •••.. 50. For least or greatest: . . . . . • 56. For interpolation point: ..••....• 44. Character Mode - ' For a match: •..• 46 + 4C. For least or greatest: . . . • . . 50 + 4C. For interpolation point: . . • . • . . . . 46 + 4C. Bit indicators: Word ModeSet bit in separate location: .•••..• 7. Set bit in pattern: .. 17. Test bit in separate location: •••.•.• 14. 10/65 Floating point 85 85 56 112 Test bit in pattern:. Test AND for B bits: .•..••..• Test OR for B bits:. .428 Moving, for N words: Word Mode Using programmed loop: •...•.••• Using straight-line coding: ...•...• Character Mode Within same Memory Module: Between two Memory Modules: •..•. .5 21 • 27. 27. 7 + 50N. ION. 24 + 4N. 24 + 4N. ERRORS, CHECKS, AND ACTION Error Check or Interlock Action Exponent overflow: Exponent underflow: Integer overflow: Zero divisor Invalid operation: check check check check programmed check none. check parity check send parity bit. check check interrupt. interrupt. interrupt. interrupt. error routine. Arithmetic error: Invalid address: Receipt of data: Dispatch of data: Invalid index: Stack overflow: interrupt. interrupt. interrupt. interrupt. Note: "Interrupt" indicates that the Processor sets a specific bit in the Interrupt Register and enters the Control State; the Master Control Program then deals with the error condition (see Paragraph 203:191. 44). A. AUERBACH • -£. 203:061. 100 . SII"''' BURROUGHS B 5500 CONSOLE AEDP - AUERBAC~ "\, REPORTS CONSOLE .1 GENERAL • 11 Identity: •••••..... B 5310 Console. .12 Associated Units: ...• Supervisory Printer and Keyboard. Distribution and Display Panel. • 13 Description • 24 Stepping:••.•••.••• none. The Console of the B 5500 Information Processing System consists of a simple, elongated L-shaped desk containing a row of basic controls and indicators along a narrow ridge at the rear of the desk. On the short end of the L is the Supervisory Printer and Keyboard, a modified electric typewriter used for direct communication between the operator and the B 5500's Master Control Program (MCP); Paragraph. 6 describes the characteristics of this unit. • 25 Resets: ..••..•.•• none • .26 Loading • 23 Simplicity in system operation has clearly been a goal in the design of the B 5500. The few controls on the Console reflect this purpose. However, online program debugging and tracing are made impractical, if not impossible, by the lack of register displays and of direct methods for data insertion. Power on-off and loading operations are the only control facilities provided at the Console. The normally-covered cabinet that houses the Display and Distribution Panel provides binary displays of all processor and Input-Output Channel registers in the form of button-lamps that can also be used for entry of data. Buttons are also provided to clear all or selected registers. The Display and Distribution Panel is normally used only for system maintenance purposes, although its use is in no way restricted to this purpose. Comment Halt: Load: Card Load Select: button loads a program (usually the MCP) into core storage, beginning at location 00016, and begins processing it. 2-way button selects Card Reader or Disk File/Drum Storage as input device for load operations. Sense Switches: .••.• none • .3 DISPLAY .31 Alarms Condition Indicated Memory Check: .32 red lamp storage parity error. Conditions Condition Indicated Power On: Halt: Card Load Select: CONTROLS Not Ready: A Normal: Form Comment A Control: Power On: button B Normal: Power Off: button initiates power-on cycle for all units. initiates power-off cycle for all units. Connections: ••••.. none. © places Processor(s) in an idle condition; they can be restarted only by a subsequent load operation • • 27 .21 .22 button Comment The System Control section of the B 5500 is an internal synchronization and switching network that also contains the master clock, a 1/60-of-asecond interval timer, and an interrupt system. The interval timer is used continuously by the Master Control Program in its compilation of logging and accounting information for eventual printing on the Supervisory Printer and Keyboard. .2 Stops and Restarts B Control: • 33 green power on. lamp red lamp Processor(s) in idle condition. yellow lamp white lamp yellow lamp yellow lamp yellow lamp yellow lamp Card Reader selected for load operation. one or more units not available for normal use. Processor A in normal state. Processor A in control state. Processor B in normal state. Processor B in control state • Control Registers: ••• no display provided at Console. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 203:061. 340 · 34 Storage: • . . . . . . • . . no display provided. .4 ENTRY OF DATA: •.. no Console provision; Supervisory Printer keyboard can be used under program control. BURROUGHS B 5500 Since the Supervisory Printer functions as an inputoutput device, under direct control of an InputOutput Channel, processing is not halted during the printer's operations. The Supervisory Printer prints one character at a time at a spacing of ten characters per inch horizontally and three or six lines per inch vertically. Continuous fanfold sprocket-punched stationery is used; its width may be up to 12 inches. .5 CONVENIENCE • 51 Communication: •...• none. · 52 Clock: ••.••..•.•. none (interval timer provides no visual display of time). · 53 Desk Space: .••.... Console provides ample work space at desk-top height. .54 View: ...••.....•. operator seated at Console has unobstructed view in all directions. .6 • 61 • 62 The keyboard contains the standard B 5500 set of 63 characters. The following controls are located on the keyboard. Name Form Comment Local: key Remote: key disconnects unit from system and unlocks keyboard for normal typing. locks keyboard until Ready light is on. INPUT-OUTPUT UNIT Input Request: key sets Keyboard Request interrupt bit in the B 5500. Identity: ....•••.•. Supervisory Printer and --Keyboard. End of Input: key Error: key Ready: lamp transfers a group mark to storage as the last character of a message. transfers a group mark with incorrect parity, signifying that a typing error was made. indicates that messages can be entered via the keyboard. Description The Supervisory Printer and Keyboard is a modified single-case Smith-Corona Marchant electric typewriter. It is used for two-way communication between the operator and the B 5500 system. The operator can use the keyboard to type inquiries and instructions to the Master Control Program. Under control of the Master Control Program, in turn, the printer can type instructions to the Operator anli answers to his inquiries. An Input-Output Channel is used for information flow to and from the Supervisory Printer. Data transmission is serial by character. 10/65 • 63 Performance Input: • . • . . . . . . . . . limited by manual typing speed. Output: . . . • . . . . . . . 10 characters per second. fA. AUERBACH e ~ 203:071. 100 srmno l!~E~p: BURROUGHS B 5500 INPUT-OUTPUT B 122 CARD READER ____--~,.....----.I INPUT-OUTPUT: B 122 CARD READER .1 GENERAL .11 Identity: . . . . . . . . . . B 122 Card Reader. .12 Description The B 122 Card Reader reads SO-column punched cards of standard or postcard thickness at a maximum rate of 200 cards per minute. Reading is performed by 13 photoelectric cells (one for timing), serially by column and parallel by bit. The time required to read each card, normally 300 milliseconds, is increased by 15 milliseconds when the reader is used intermittently rather than at its peak rate. The B 122 Card Reader automatically translates Hollerith code into Burroughs Common Language (BCL) code before transferring the information to the Input/Output Channel control. The I/O Channel acts as an input buffer and allows computation to proceed independently of the card read operation. The Input/Output Channel being used is dedicated to the card read operation until the last card column has been read. A maximum of two card readers, in any combination of models (see Report Section 202:072 for additional card readers), can be connected to a B 5500 through up to four "floating" Input/Output Channels. The card read operation is initiated when the B 5500 Processor sends a Card Read Input/Output Descriptor from its A register to the D register of the I/O control unit. The control unit selects an idle I/O channel and initiates the card read command. Single cards are read either in alphameric mode (and then decoded by the card reader into 6-bit alphameric characters) or in the column binary mode. Groups of eight 6-bit characters, or four 12-bit binary card column representations, are assembled into a 48-bit B 5500 word in the W register of the control unit, and then transferred to a Descriptor-specified address in core storage. After the 80th card column has been read and the last input word has been transferred to core storage, a Result Descriptor is constructed that indicates the results of the card read operation by means of various bit settings. End-of-file, busystatus, and not-ready conditions, as well as invalid-character and read-check errors, are indicated in the Result Descriptor for subsequent testing by the Master Control Program. The input storage address contained in the I/O Descriptor is checked for validity and proper parity, and errorcondition bits are set in the Result Descriptor when necessary. Card jams and full-stacker conditions also set testable error indicators. Input data transfers from the I/O control unit to the Memory Module consume only 40 microseconds (or 80 microseconds in binary mode) per card, and in no way inhibit the concurrent performance of the Processor. The sole function of the Processor in a card read operation is to issue an Initiate Input-Output command, thereby causing the Descriptor contained in its A register to be transferred to the I/O control unit. The Processor then proceeds independently until a bit is set in the External Interrupt Register, which interrupts the Processor and indicates that the card read operation has been terminated. Interrupt bits are also set if another Data or I/O Descriptor references an area of memory currently being filled by the card read operation. Cards are fed by a pinch-roller mechanism on demand from the I/O control unit. The input hopper has a capacity of 500 cards and can be refilled while cards are being read. The single stacker provided also holds 500 cards, but it cannot be emptied while the unit is in operation. Stacker select options are not available. Unlike the Burroughs card readers described on page 203:072.100, there are no optional features available for the B 122 Card Reader. First delivery .of the B 122 occurred late in 1961. It is currently available for immediate delivery. I '" © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 -&. 203:072. 100 SlIm .. /Ii& E D P AUERBA~\ BURROUGHS B 5500 INPUT-OUTPUT B 123/124/129 CARD READERS - • REPOITS INPUT·OUTPUT: B 123/124/129 CARD READERS .1 GENERAL .11 Identity: ..•••••..• B 123 Card Reader. --B 124 Card Reader. B 129 Card Reader. .12 Description After the SOth card column has been read and the last input word has been transferred to core storage., a Result Descriptor is constructed that indicates the results of the card read operation by means of various bit settings. End-of-file, busy status, and not-ready conditions, as well as invalid character and read-check errors, are indicated in the Result Descriptor for subsequent testing by the Master Control Program. The input storage address contained in the I/O Descriptor is checked for validity and proper parity, and error condition bits are set in the Result Descriptor when necessary. Card jams and full-stacker conditions also set testable error indicators. The Burroughs B 123, B 124, and B 129 Card Readers provide punched card reading speeds of 475, SOO, and 1400 cards per minute, respectively. Except for this considerable difference in rated speeds, the three readers are essentially the same. Any of these readers, and the B 122 Card Reader described in the previous report section, can be paired in any combination for use with a B 5500 system; the maximum number of card readers per system is two. The sole function of the Processor in a card read operation is to issue an Initiate Input-Output command, therby causing the Descriptor contained in its A register to be transferred to the I/O control unit. The Processor then proceeds independently until a bit is set in the External Interrupt Register, indicating that the card read operation has been terminated. Interrupt bits are also set if another Data or I/O Descriptor references an area of memory currently being filled by the card read operation. The B 123, B 124, and B 129 Card Readers can read standard or postcard thickness punched cards of 51, 60, 66, or SO columns. The standard types of scored cards are acceptable when the stubs are removed. An immediate-access clutch provides demand feeding of the cards. Photoelectric reading by column initiates the automatic transfer of data from the card to a code translator within the card reader, en route to the input/output control unit. (No code translation occurs when the reader is operating in the 3lternative binary mode.) Since the B 123, B 124, and B 129 Card Readers make use of immediate-access clutching, and since the read operations proceed independently of the Processor, the rated speeds of 475, SOO, and 1400 cards per minute will always be achieved, provided that successive Initiate I/O instructions are issued within the readers' read cycle times. The read cycle times for the B 123, B 124, and B 129 Card Readers are 126, 75, and 42.8 milliseconds, respectively. One of up to four "floating" Input/Output Channels is selected for the card read operation by the I/O control unit. The channel that is selected remains dedicated to the card read process until the last card column has been read. However, the Processor is entirely free throughout the reading operation, and the Memory Module to which input data is transferred is accessed for a total of only 40 microseconds (80 microseconds in binary mode) during the entire card read cycle. Cards are fed by a belt-drive mechanism past the stack of 13 photoelectric read cells (one for timing) and transported to the single stacker .. Both the hopper and the stacker have capacities of 2,400 cards and can be filled and emptied while the card reader is in operation. Should a jam occur in the card transport device, the unit will halt with a maximum of two cards jammed, and a bit will be set in the Result Descriptor. An empty hopper condition sets the not-ready bit and, in the B 129 Card Reader, turns off the unit's card transport mechanism. The card read operation is initiated when the B 5500 Processor sends a Card Read Input-Output Descriptor from its A register to the D register of the I/O control unit. The control unit selects an idle I/O Channel and initiates the card read command. Single cards are read either in the alphameric or column binary mode. Groups of eight 6-bit characters, or four 12-bit binary card column representations, are assembled into a 4S-bit B 5500 word in the W register of the control unit, and then transferred to a Descriptor-specified address in core storage. 10/65 A The av:ailability of the B 123, B 124 and B 129 Card Readers is from three to four months. First deliveries of the prototype B 124 Card Reader occurred during the last quarter of 1963. AUERBACH • 203:073.100 \ A SUKDUII BURROUGHS B 5500 INPUT-OUTPUT CARD PUNCHES EDP AUERBACH RIPORTS ~ INPUT·OUTPUT: B 303/304 CARD PUNCHES .1 GENERAL .11 Identity: .•••••.•.. B 303 Card Punch. B 304 Card Punch. .12 Description The B 303 and B 304 Card Punches operate at maximum rates of 100 and 300 cards per minute, respectively. Only one card punch can be connected to a B 5500 system. Standard or postcard thickness 80-column cards can be punched (but not both thicknesses during the same run). Pre-scribed and/or pre-punched cards can also be punched if the post-punch checking device is inactivated by the operator. Formatting of the punched card is controlled exclusively by the stored program. Cards are punched by a single row of 80 die punches, one row at a time. An 80-bit, one-row buffer in the punch unit is used to compare the row just punched with the input row in the buffer. Cards can be punched in alphameric or binary mode. In the alphameric mode, the punch unit translates the BCD character codes from the B 5500 into standard Hollerith card code. In the binary mode, data is punched exactly as it appears when transferred from the I/o Channel. The card punch operation is initiated when the Processor sends a Card Punch I/O Descriptor to the I/O control unit. From that point on, the Processor is entirely disassociated from the punching operation and is free to continue processing. The I/O control unit receives the address of the output data in the B 5500's Memory Module and selects the highest-priority free I/O Channel. The I/O control unit then accesses the designated Memory Module and fetches a 48-bit data word for temporary storage in the I/O Channel's one-word buffer (JV register). This word contains either eight 6-bit alphameric characters or four 12-bit binary data representations. The data word is then sent to the card punch, one character at a time, and assembled for punching. Ten accesses to the Memory Module (20 in binary mode) are required before the card can be punched. The Memory Module being accessed is tied up for a total of either 40 or 80 microseconds for each card punch cycle. The I/O Channel is completely dedicated to the punching process once it senses the Initiate I/O instruction. When the card punch cycle has been completed, a specific bit is set in the External Interrupt Register. After each card has been punched, an I/O Result Descriptor is constructed with bit settings that indicate the results of the punching operation. Improper or invalid punches set the punch error indicator, and data-transfer parity errors set a specific indicator. The "not-ready" bit is set for any of the follOWing conditions: empty hopper, feed check, full stackers, punch die not in place, and power off. The address- of the output data in the Memory Module is checked for validity and proper parity. If the punch unit is found to be currently assigned to another I/O Channel, a "busy" bit is set in the Result Descriptor. The External Interrupt Register is examined continuously by the Master Control Program. When it finds that an input-output operation has ended, the MCP examines the I/O Result Descriptor to determine whether or not further action is required. From the punch unit's hopper to stacker, cards are transported by positive-action pinch rollers. Hopper and stacker capacities of the B 303 Card Punch are 800 cards each. The B 304 Card Punch is equipped with three stackers: primary, auxiliary, and error. The primary stacker can hold 3, 000 cards, the same capacity as the unit's hopper. Error cards are segregated in the error stacker, holding 750 cards. The 850-card auxiliary stacker is normally used as an alternative to the primary stacker, controlled by a switch on the control panel. Significant timing considerations and a comparison of the B 303 and B 304 Card Punches are provided in Table I. TABLE I: B 303/B 304 CARD PUNCH TIMING FACTORS Model: B 303 B 304 Rated speed 100 cpm 300 cpm Total card cycle time in synchronous mode 600 msec 200 msec Overhead in asynchronous mode 50 msec 200 msec Maximum punching rate in asynchronous mode 92.3 cpm 150 cpm © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 203:074. 100 A BURROUGHS B 5500 INPUT-OUTPUT B 141 PAPER TAPE READER AUERBACH STANI1ARB EDP REPDRTS ~ INPUT ·OUTPUT: B 141 PAPER TAPE READER .1 GENERAL .11 Identity: . . • . . . . . • . B 141 Paper Tape Reader. B 5410 Paper Tape Adapter. B 142 Input Code Translator. Description .12 .are sensed by means of adhesive opaque strips on the tape being read. If the tape breaks, the tape reel motors are shut down automatically. In addition to its use as an on-line input device to the B 5500 system, the B 141 Paper Tape Reader can be used off-line to check punched tape for parity errors. The B 141 will stop when improper parity is detected. The B 141 Paper Tape Reader reads data from punched paper or metalized Mylar tape at speeds of either 500 or 1,000 characters per second. Up to two B 141 's can be connected to a B 5500 system via the B 5410 Paper Tape Adapter. A maximum of three paper tape readers and punches (see Section 202:075) can be connected, in combination, to one system. The B 141 Paper Tape Reader can accommodate 5, 6, 7, or 8-level tape, as selected by the operator. The standard tape code is the 8-level Burroughs Common Language (BCL) paper tape code (see Data Code Table, Section 203:141). The Processor initiates the read operation by transferring a Paper Tape Input Descriptor from its A register to the I/O control unit by means of anlnitiate I/Oinstruction. The processor is subsequently entirely free of the input operation. The Input Descriptor contains information such as the reader unit designation, the number of 48-bit words that are to be read, the input address in a Memory Module, and the type of paper tape reader operation to be performed: read, space, or rewind. The optional B 142 Input Code Translator allows automatic translation of any code (5, 6, 7, or 8level) to anyone of the 64 six-bit BCL characters. If the B 142 is not used, programmed translation will be required unless the tape is punched in the 8-level BCL code. The I/O control unit then selects the highestpriority free I/O Channel and activates the reader. Input data is transferred to the I/O Channel control's W register and assembled into 48-bit words. When the W register is full, the designated Memory Module is accessed and the data word is transferred. The Memory Module is occupied for 4 microseconds for each word transferred. The maximum number of input words that can be transferred to core storage in one read operation is 1,023. The operator can enable different paper tape channels to be read by use of a plugboard which is supplied as part of the B 141 Reader. A code punched in all channels (whether 6, 7, or 8-level tape) is considered a delete code and is not transferred to the Processor when operating without a translator. When the read operation is terminated, a specific indicator bit is set in the External Interrupt Register, and an I/O Result Descriptor is constructed. The Result Descriptor indicates, with bit settings, the results of the just-completed read operation. These bits are then tested by the Master Control Program to determine whether any further action is necessary. If the B 141 Paper Tape Reader was discovered to be not-ready or busy, specific indicator bits are set. Likewise, if the I/O Descriptor's address has improper parity when transferred from core storage to the I/O control unit, or if data parity errors have occurred in the transfer of data from the reader to the I/O control unit, other bit indicators are set. Reading speed is 500 or 1,000 characters per second. Reading is entirely buffered, since it is performed by the Input/Output Channel control, independently of the B 5500 Processor. Fanfold tape, whether in strips or in reels, and metalized Mylar tape must be read at 500 characters per second; other punched tape can be read at either speed. Start and stop times are 5 and 20 milliseconds, respectively. The reader can stop on the stop character or between characters at both high and low speeds. A minimum of four feet of tape leader is required when reels are used, and at least one foot is needed for strip reading. Tape widths of 0.675, 0.875, or 1.000 inch can be handled interchangeably. Reel diameters of either 5.5 or 7 inches can be accommodated. Beginning- and end-of-tape indicators 10/65 • 13 Availability: ..••... 3 to 4 months. .14 First Delivery: •.•.. September, 1963. fA. AUERBACH 203:075. 100 & STI"'" ~EDP AUERDAC~ REPORTS BURROUGHS B 5500 INPUT-OUTPUT B 341 PAPER TAPE PUNCH • INPUT·OUTPUT: B 341 PAPER TAPE PUNCH .1 GENERAL .11 Identity: .12 Description B 341 Paper Tape Punch. B 5410 Paper Tape Adapter. B 342 Output Code Translator. The B 341 is basically a Teletype paper tape punch that is capable of punching data from a B 5500 Memory Module at a "minimum" speed of 100 characters per second, spaced 10 characters per inch. The B 341 can punch either 5, 6, 7, or 8-level tape, according to operator selection. The standard code punched is the 8level Burroughs Common Language (BCL) paper tape code. Up to two B 341's can be connected to a B 5500 system via the B 5410 Paper Tape Adapter. A maximum of three paper tape punches and readers can be connected, in combination, to one system. The optional B 342 Output Code Translator allows automatic translation of the 64 six-bit BCL characters that can be sent from the Memory Module to the punch into any 5, 6, 7, or 8-level paper tape code. If the Code Translator is not installed, the 6-bit BCL characters from core storage are punched in the 8-level BCL paper tape code (see Data Code Table, Section 203:141). The level of paper tape punching is operatorselectable. The choice between 5, 6, 7, or 8level punching is made possible through the use of a plugboard that is supplied as part of the B 341 Punch. The B 341 is capable of punching data into several forms of tape, such as oiled or dry paper tape, laminated fiber tape, and metalized or laminated Mylar tape. Tape widths can be either 0.675, 0.875, or 1. 000 inch. The size of the supply reel can range up to 8 inches in diameter, and the take-up reel can be either 5. 5 or 7 inches in diameter. Take-up reels are not required during the punching process. When the tape supply reel has 35 feet or less remaining on it, an end-of-tape signal is produced to alert the Processor. ',,-- The B 5500 Processor initiates the punch operation by transferring a Paper Tape Write Output Descriptor from its A register to the I/O control unit by means of an Initiate I/O instruction. The Processor is free during the remainder of the completely-buffered punching operation. The Output Descriptor contains information such as punch unit designation, starting address of the output data in a Memory Module, indication to perform a tape feed operation only (punching all holes). specification of binary or alphameric punching. and an output word counter. If punching is specified as binary, the word counter limits the punching operation to from 1 to 1,023 48-bit words of output data. In the alphameric punching mode, the word counter specifies the maximum number of words that can be punched, but allows for earlier termination of punching if an end-offile character is recognized. The I/O control unit selects one of the four possible "floating" I/O Channels and initiates the transfer of data from the designated Memory Module to the B 341 Punch. Data is transferred in 48-bit words. Each memory access occupies the Memory Module for four microseconds. The I/O Channel is dedicated to the punching process for the duration of the output operation, but the associated Memory Module can be accessed by the Processor(s) and other I/O Channels during the tape punching operation. When the punch operation is terminated, a specific indicator bit is set in the External Interrupt Register and an I/o Result Descriptor is constructed. The Result Descriptor indicates, with bit settings, the results of the just-completed punch operation. These bits are then tested by the Master Control Program to determine whether any further action is necessary. If the B 341 Paper Tape Punch was discovered to be not-ready or busy, or if the physical end-of-tape marker has been sensed, specific indicator bits are set. Likewise, if the I/O Descriptor's address has improper parity when transferred from core storage to the I/O control unit, or if data parity errors have occurred in the transfer of data from the I/O control unit to the punch unit, other bit indicators are set. . © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 203:081. 100 BURROUGHS B 5500 INPUT-OUTPUT B 320/321/325 LINE PRINTERS INPUT-OUTPUT: B 320/321/325 LINE PRINTERS .1 GENERAL .11 Identity: . 12 Description Printing is performed on continuous card or paper forms. Forms width can extend from 5 to 20 inches; the maximum length is 22 inches per form. Output format spacing is 10 characters per inch horizontally and 6 or 8 lines per inch vertically . B 320 Line Printer. B 321 Line Printer. B 325 Line Printer. As many as five carbons plus the original form will function properly in the printers. The forms are loaded in the cabinet beneath the printing mechanism and are transported through the unit by means of pin-fed tractors to the self-maintaining stacker. A Paper-Exhausted indicator/switch and several broken-paper detectors interlock the . printer when required in order to provent runaway printing without forms. The B 321 Line Printer prints at a maximum rate of 700 single-spaced or 650 double-spaced alphameric lines per minute. When average line spacing occurs at one-inch intervals, the speed is reduced to about 540 lines per minute. Sixty-four characters (10 numeric, 26 alphabetic, and 28 special symbols) can be printed in a line of 120 print positions. The B 5500's line printer character set is listed in the Data Code Table on page 203.141.100. The format of the printed line is under control of the problem program or the Master Control Program's Output Writer. The code translation from Burroughs Common Language (BCL) internal code to the 64-character print set is performed automatically. The actual printing is accomplished by hammer strokes against a continuously-rotating engraved drum. Once the drum has made a complete revolution, every character will have been printed, and the paper motion can begin. Each line spaced after printing consumes 5.95 milliseconds. The graph on the next page illustrates the maximum printing speeds of the B 320, B 321, and B 325 Line Printers at varying line spacings. The B 320 Line Printer is a slower version of the B 321 and is offered at a substantially reduced price; this slower model operates at a peak speed of 475 lines per minute. The B 325 Line Printer increases the printing flexibility by providing 132 print positions. Except for these differences in speed and print-block size, respectively, the B 320 and B 325 Line Printers are functionally identical with the B 321 model. Therefore, in the description that follows, reference is made only to the characteristics and capabilities of the B 321. Up to two line printers can be connected to a B 5500 system. The B 320 and B 321 can be paired in any system, but the 132-print-position B 325 cannot be used in the same system with either the B 320 or B 321. Since the printing operation is completely buffered, two line prin~rs can operate simultaneouslyand at their rated speeds. Information is transferred from core storage to the B 321 Printer through an I/o Channel in the form of fifteen 48-bit (8-character) words per line. The printer stores. this information consecutively in its 120-character buffer. As soon as the buffer is full, the I/O channel is released and the printing cycle begins. Printing, spacing, and skipping operations proceed independently of the I/o Channel once the buffer is full and the paper motion signals are received. A number of functional controls are provided to enable the operator to adjust for variances in the size of the forms and the number of interleaved carbons. The operator can also adjust the horizontal and vertical alignment of the forms and the print quality of individual print positions. Error checks are made for proper character parity in the buffer, for drum rotation synchronization, and for the presence of paper. Errors are signalled by a control-panel indicator and result in a halt of the printer. Error conditions set individual bits in the printer's Result Descriptor, which is returned to core storage at the conclusion of the printing operation. The B 321 's total print cycle time is 85.7 milliseconds. Of this time, only 3 milliseconds is consumed in loading the buffer by the I/o Channel. The B 5500 Memory Module containing the output data is occupied for a total of 60 microseconds, the time required to access 15 consecutive words of data. The Processor is entirely free of the printing operation once it has sent the Line Printer Output Descriptor to the I/o control unit. As soon as the printer's buffer has been loaded, an interrupt bit is set to inform the Master Control Program that the I/O Channel is free. Another interrupt bit is set when the actual printing and spacing operation is complete. At that time, the MCP tests the Result Descriptor to determine such conditions as end-of-paper, parity errors in data transfer, unit non-readiness, busy status, and improper drum synchronization. The MCP then initiates whatever corrective action might be necessary. Spacing and skipping operations are specified in the Output Descriptor, and can be performed in conjunction with printing or independently. Spacing can be specified as 0, 1, or 2 lines, and skipping can be regulated by a 12-channel punched tape loop. Paper advance can occur at a rate of 25 to 40 inches· per second. 10/65 A The chart and graph on the next page show comparative performance figures for the B 320, B 321, and B 325 Line Printers. (Contd.) AUERBACH . ~ ,/ 203:081. 120 INPUT-OUTPUT: B 320/321/325 LINE PRINTERS TABLE I: LINE PRINTER CHARACTERISTICS Line Printer Model B 320 B 321 B 325 Maximum speed (lines per minute) 475 700 700 Number of print positions 120 120 132 Effective Speed: B 320, B 321, and B 325 Line Printers 1,000 900 800 ..... 700 600 500 ...... 400 ~ " ............r--....... r-... """- 300 ~ ~ ~ ............ ...............-. --. ~ • r--. ~ B3JO 325 --- 200 Effective Speed: Printed Lines Per Minute 100 90 80 70 60 50 40 30 20 o 1/2 1 2 3 4 5 Inter-Line Pitch in Inches © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 -&. 203:082.100 SIAlDARD ~\\EDP - BURROUGHS B 5500 INPUT-OUTPUT B 328/329 LINE PRINTERS AUERBACH REPOITS ~ INPUT·OUTPUT: B 328/329 LINE PRINTERS .1 GENERAL • 11 Identity: ••••••.••• B 328 Line Printer. B 329 Line Printer. .12 is therefore not contingent on the completion of a full drum revolution • The operational speeds of the printers are governed by the rotational speed of the print drum and the paper advance speeds. The rotational speed is 1,040 rpm, or one revolution every 57.7 milliseconds. The printing or bypassing of each character on the drum requires 0.9 millisecond. To advance the form a single space requires 24 milliseconds for the first space and 7 milliseconds for each additional space. Therefore, to maintain printing speeds of 1,040 lines per minute, the total printing and spacing time must not exceed 57.7 milliseconds. On this basis, up to 37 consecutive alphameric characters can be printed and single spacing can occur during a sing-Ie drum revolution. Table I indicates effective speeds as character sets and spacing demands are varied. Description The B 328 and B 329 Line Printers operate at a maximum rate of 1,040 lines per minute at single spacing when the characters to be printed are limited to those in a continuous 37-character segment of the print drum. The peak rate can also be maintained while printing and triple-spacing if a 16character "numeric and edit" set is used. As larger character sets are used, the operational speeds are reduced, as shown in Table I below. When the entire 64-character set is utilized, the single-spaced speed will not fall below 734 lines per minute. The only difference between the B 328 and B 329 .Line Printers is the number of print positions available for each line. The B 328 provides 120 print positions, and the B 329 provides 132 print positions Up to two line printers can be connected to a B 5500 system, but the B 328 and B 329 cannot be paired in the same system. The B 320 and B 321 Printers (described in the previous report section) can be intermixed with the B 328, and the B 325 Printer (also described in the previous section) can be paired with the B 329. Spacing and skipping operations are specified in the Output Descriptor, and can be performed in conjunction with printing or independently. Spacing can be specified as 0, I, or 2 lines, and skipping . can be regulated by a 12-channel punched tape loOp. Each line spaced after printing requires 7 milliseconds. Paper advance can occur at a rate of 24 inches per second. standard features of the B 328 and B 329 Line Printers include a ribbon-tracking device to sense and control ribbon mistracking, and duplicate controls and indicators on the rear of the cabinets to assist the operator. Except for these added features, the B 328 and B 329 Line Printers have the same physical characteristics, program requirements, forms controls, and error-checking devices as the B 320, B 321, and B 325 printers described in the previous report section, page 203:081.100. Burroughs' standard 64-character drum printer set has been statistically analyzed and regrouped on the drum according to frequency of use. The 37 most frequently-used characters (10 numeric, 26 alphabetic, and the period) are arranged in consecutive locations around the drum. The revised drum arrangement and a "quick cancel" memory result in the improved performance of the B 328 Line Printer over the 700-line-per-minute B 321 model. The first deliveries of the B 328 and B 329 1,040line-per-minute printers were made in June, 1965. Availability is eight months. The printing process is initiated when the Processor sends a Line Printer Output Descriptor to. the I/O control unit. The Processor is then completely free for further processing. A free I/O Channel is selected by the I/O control unit and 15 consecutive words of output data are transferred from a designated Memory Module to a 120-character buffer (132 characters in the B 329) within the printer itself. The Memory Module is occupied for a total of 60 microseconds in accessing the data. As soon as the buffer has been filled (a process that consumes about three milliseconds), printing begins and the I/O channel is released. TABLE I: EFFECTIVE SPEEDS OF B 328 and B 329 LINE PRINTERS Lines Advanced per Line Printed As each character in the buffer is printed, its buffer position is set to a blank. Immediately upon detection of a completely blank buffer, paper motion begins. (A minimum of 16 characters on the drum must pass the printing mechanism before paper advancing can begin.) The start of paper motion 10/65 A AUERBACH e Printed Lines per Minute Using Various Consecutive Character Sets 10 37 64 Characters Characters Characters 1 2 3 4 5 1040 1040 1040 1040 700 1040 780 715 660 610 734 680 625 584 546 6 12 18 30 648 446 340 230 572 409 318 220 510 380 300 211 -&., 203: 091. 100 sTlNam IA\EDP . AUERBACH BURROUGHS B 5500 INPUT-OUTPUT MAGNETIC TAPE UNITS REPORTS _--'------1 INPUT-OUTPUT: MAGNETIC TAPE UNITS .1 GENERAL • 11 Identity:. ••.• B B B B 422 423 424 425 Magnetic Magnetic Magnetic Magnetic Tape Tape Tape Tape Unit • Unit. Unit. Unit. .12· Description The magnetic tape units available for use with the B 550.0. provide data transfer rates ranging from 1S,0.0.0. to 72,0.0.0. characters per second and packing densities of 20.0., 556, or So.o. rows per inch. Each row can consist of one 6-bit character or two octal digits, depending upon whether the recording was performed in alphameric or binary mode. In addition to the six data bits per row, a seventh channel is provided for a parity bit. Data is recorded on 0.. 5-inch Mylar-based tape on reels 10..5 inches in diameter. The reel capacity is 2,40.0. feet, allowing a maximum of 22.1 million alphameric characters per reel when recording at the so.o. characters-per-inch density. Tape reading can be performed in either a forward or backward direction, and all tape operations, including read, write, forward and backward space, erase, and rewind, are carried out independently of the B 550.0. Processor. Up to four magnetic tape operations can be performed simultaneously, since each operation is controlled by an independently functioning, "floating" I/O Channel, four of which can be used in a B 550.0. system. A maximum of 16 magnetic tape units can be connected to a B 550.0.. The B 422, B 423, and B 424 Magnetic Tape Units are functionally identical, but they differ among themselves in several performance categories. The B 425 Magnetic Tape Unit, also similar to the other models, features "drive holdover," which improves its performance by preventing tape movement from stopping when a read or write command is initiated within 2 to 3 milliseconds after com- pletion of the prior tape command. Table I illustrates the differentiating characteristics between the four tape unit models, and the associated graph demonstrates the resulting variances in performance. Only the B 422 and B 424 Magnetic Tape Units can be intermixed on the same B 550.0. system. Tape operations are initiated when the Processor sends a Magnetic Tape I/O Descriptor to the I/O control unit. At that point the Processor is free to continue with its processing task. The I/O control unit then selects a free I/O Channel and begins the transfer of data between a tape unit and a B 550.0. Memory Module. The selected I/O. Channel remains fully occupied for the duration of the tape operation. The I/O Descriptor specifies the tape operation to be performed and all other necessary parameters such as unit designation, input or output Memory Module address, alphameric or binary reading or recording mode, direction of read, and data word count when required. When recording in the alphameric mode, BCL-coded 6-bit characters are written from core storage until a special groupmark character is encountered. Thus, the size of core storage is the only limiting factor on the tape record length when recording in the alphameric mode. Binary recording is terminated when a specified number of 4S-bit words (eight tape rows per word) have been written. The maximum number of binary words that can be written in or read from each block is 1,0.23. Binary tape reading is also terminated by satisfying the word count. Alphameric reading is terminated either by satisfying the word count or by sensing the 0.. 75-inch interblock gap on tape, whichever is encountered first. After the tape operation has been completed, a special I/O-complete bit is set in the External Interrupt Register, and an I/O Result Descriptor is constructed and sent to core storage. The Result Descriptor indicates if the assigned tape TABLE I: CHARACTERISTICS OF BURROUGHS MAGNETIC TAPE UNITS Tape Speed, inches per sec Recording Density, bits per inch Peak Speed, char per sec B 422 120 200 556 24,000 66,000 Model No. \ Interblock Gap Lengths inches msec (1) 0.75 8.7 Efficiency, % (3) 100-char hlocks 1,00{}-char blocks 209 574 32.3 14.8 63.5 64.4 chars (2) Demand on Core Storage, % Rewind Speed, inches per sec 1.2 3.3 320 B 423 120 200 24,000 0.75 8.7 209 32.3 63.5 1.2 320 B 424 83 800 66,000 0.75 8.7 574 14.8 64.4 3.3 320 B 425 90 200 556 800 18,000 50,000 72,000 0.75 6.25 113 313 450 46.9 24.2 18.0 89.8 76.1 68.9 0.9 2.5 3.6 320 (1) Published time in milliseconds to traverse each interblock gap when reading or writing consecutive blocks; the interblock gap time for. the B 425 assumes the use of the "drive holdover" feature. (2) Effective number of character positions occupied by each interblock gap. (3) Effective speed at the indicated block size, expressed as a percentage of peak speed. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 BURROUGHS B 5500 203:091. 120 .12 In addition to the data-transfer validation provided by the read-after-write check, several other checks are provided. Row parity is checked during both reading and recording. A longitudinal check character for each block is developed during recording and checked during subsequent readings. Data transfer errors of any kind cause specific bits to be set in the I/O result descriptor. Description (Contd.) unit was not ready or busy, if an end-of-file or physical end-of-tape marker was sensed, or if data transfer parity errors occurred. The Master Control Program tests the bit settings of the Result Descriptor and initiates any corrective action that may be required. .The B 422, B 423, B 424, and B 425 Magnetic Tape Units are fully compatible with the tape units used with the Burroughs B 100/200/300 Series. Computer systems of this smaller Burroughs series can thus be readily used as satellites to the larger B 5500 systems. Compatibility is also achieved with the mM 729 and 7330 tape units, and with the newer mM 2400 Series tape units equipped with the 7Track Compatibility feature. When reading or recording, tape is pulled from a vacuum-column buffer by a moving capstan and pinch-roller assembly, and passed under a dualgap read/write head. Tape speed past the head is 120 inches per second in the B 422 and B 423, 83 inches per second in the B 424, and 90 inches per second in the B 425. The read section of the head follows the write section by 0.15 inches to allow for immediate read-after-write checking. Tape is then drawn into another vacuum column preceding the take-up reel to guard against tape damage and breakage. According to published specifications, the transport mechanism provides tape start times of 4.5 milliseconds and stop times of 4. 2 milliseconds, although there are indications that these published times are somewhat faster than the times actually achieved in installed transports. By means of its "drive holdover" Feature, Burroughs states that the B 425 is capable of writing consecutive records with a total interblock overhead time of 6.25 milliseconds. Reel loading is facilitated by a latch-leader device affixed to every reel. The leader is latched to a section of tape that is permanently attached to the take-up transport, and a Load button is pushed. Tape positioning for proper operation is then performed automatically. Density-switching and highspeed rewinding (320 inches per second) can also be controlled at the tape unit's control panel. First Delivery: .•..• January 1964 for B 422. February 1964 for B 423. May 1965 for B 424. Un~pecified for B 425. .14 EFFECTIVE SPEEDS: BURROUGHS MAGNETIC TAPE UNITS 100,000 25 -~t 80 0 bpi 1'>!-- _ _ . 556b ~ 4cz,cz, a.t 1'> 7 4 ~ ~~ 2 ~V V- 10,000 ~ ,, pl f1' 422 &, B 423 at 200 bpi ".. ",," 7 1/ Effective Speed, Characters per Second ~ 4 2 1,000 ~~ ~ ~~ ~ 7 4 2 .r'. 100 10 2 4 7 100 2 4 7 1,000 Characters per Block 10/65 A AUERBACH ~ 2 4 7 10,000 203: 101. 100 1. ST""" BURROUGHS B 5500 INPUT-OUTPUT DATA COMMUNICATIONS SYSTEM /AEDP AUERBAC~ REPORTS ~ INPUT·OUTPUT: DATA COMMUNICATIONS SYSTEM .1 GENERAL .11 Identity: .••...••. • 12 B 450 Disk File and Data Communication Basic Control. B 5480 Data Communication Control Unit. B 481 Teletype Terminal Unit. B 483 Typewriter Terminal Unit. B 493 Typewriter Inquiry Station. B 484 Dial TWX Terminal Unit. B 487 Data Transmission Terminal Unit. B 5480 notes the condition and sets an indicator bit in the I/o Result Descriptor. The maximum time required for the B 5480's scanner to examine the status of all its terminal units is 220 microseconds. The nominal data transfer rate through the B 5480 DCCU is 30,000 six-bit characters per second. Transfers are serial by character and parallel by bit. The paragraphs that follow describe the several types of terminal units and inquiry stations that can be connected to a single B 5480 Data Communication Control Unit. Up to 15 of these terminal units, in any combination, can operate under control of each B 5480, and two B 5480's can be connected to a B 5500 system . Description .121 B 481 Teletype Terminal Unit The Burroughs B 450 Disk File and Data Communication Basic Control Unit consists of a standard B 5500 cabinet module housing the power supply and circuitry to control up to two B 5480 Data Communication Control Units. Each B 5480 Control Unit provides the interface between a B 5500 I/O Channel and up to 15 data communications termi.nals of several varieties. The B 5480 can be located up to 50 feet from the I/O control unit; it operates independently of the I/O control unit except when loading or unloading the buffers of its associated terminal units to or from the I/O Channel. The prinCipal function of the B 5480 Data Communication Control Unit (DC CD) is to scan its terminal units to determine their input and output readiness, and to alert the processor of these conditions by sending interrupt signals to the I/o control unit. The B 5480 DCCU also provides automatic code translation facilities between Burroughs Common Language (BCL) and Baudot codes. The B 5480 DCCU's scanner can recognize that any terminal unit is in one of four possible states: busy, input-ready, output-ready, or not-ready. The B 5480 cannot communicate with a "busy" terminal; instead it sets a "terminal busy" interrupt bit in an I/o Result Descriptor that is sent to core storage. The Master Control Program tests all Result Descriptors and initiates whatever action is appropriate. When a terminal unit has received a complete message from an inquiry station, the B 5480 recognizes the terminal as input-ready and selects a free I/o Channel for transfer of the inquiry to core storage. The terminal unit is in the output-ready state when it has emptied the contents of its buffer to an inquiry station and still has not detected an end-of-reply (group mark) character. In this case the B 5480 latches its scanner to the output-ready terminal until the full response is transmitted. If the I/O control unit attempts to send a response to a terminal unit that is in the not-ready state, the © The B 481 Teletype Terminal Unit is a Teletype Model 28 Sequential Selector with selective calling features, which provides the interface between the B 5480 DCCU and a network of Teletype stations. A maximum cable length of 50 feet is permitted between the B 481 Teletype Terminal Units and the B 5480 DCCU. The B 481 provides buffer storage and performs serial-to-parallel (input) and parallel-to-serial (output) conversions of the Teletype character codes. From 1 to 400 Teletype stations can be serviced by a single terminal unit, allowing a total of 6,000 Teletype stations in the network if only Teletype Terminals are used. Each B 481 can service only one Teletype station at a time. The B 481 has a buffer storage capacity of either 120 or 240 6-bit characters; buffer access time is 20 microseconds. A character control device provides for the insertion and deletion of special Teletype control characters and station disconnect signals. An optional Teletype Page Printer can be included as part of the B 481 Terminal Unit and used to monitor all messages on the network. . 122 B 483 Typewriter Terminal Unit The B 483 Typewriter Terminal Unit provides facilities for connecting from 1 to 8 Typewriter Inquiry Stations to the communications system. The unit contains an input buffer which is capable of storing simultaneous inputs of 30 characters from each of 8 typewriter inquiry stations. An input scanning device accepts data as it becomes available (a character at a time) from any of the 8 stations, and directs it to the proper portion of the buffer. When an end-of-input character is recognized, an interrupt and latch facility holds the input buffer to the station while data is transferred through the B 5480 Data Communication Control Unit to the I/O Channel and to core storage. A 240-character output buffer is also provided in the B 483 Typewriter Terminal Unit. This buffer 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 BURROUGHS B 5500 203:.101. 122 · 122 B 483 Typewriter Terminal Unit (Contd. ) Burroughs terminal units, is general in purpose. Various remote input-output devices can be interfaced to it by means of up to 16 line (or channel) adapters. Therefore, a single B 487 DTTU can provide a B 5500 system with a mix of data transmission services without the use of additional terminal units. is used to store reply messages from the I/O control unit while the terminal. is latched to a Typewriter Inquiry Station. The terminal unit remains latched to its receiving station until the end-ofreply character from core storage is recognized. Output buffer read-out to the Typewriter Inquiry Station is under the independent control of the B 483 Typewriter Terminal Unit. Most remote devices that can use the low-speed and voice-grade lines of the telephone companies (with data transmission speeds up to 2,400 bits per second) can be connected to the B 487, and ultimately to the B 5500, via Burroughs' line adapters. • 123 B 493 Typewriter Inquiry Station The B 493 Typewriter Inquiry Station utilizes a Teletype Send-Receive Page Printer set. It communicates with the B 483 Terminal Unit via a multiple-conductor cable which can be up to 1 mile long, and it can be used for input and output of alphameric data at up to 10 six-bit characters per second. Up to 8 Typewriter Inquiry Stations can be connected to each B 483 Terminal Unit. The B 487 DTTU contains buffer units to control the flow of data between the remote devices and the B 5500 I/o control unit. The total capacity of the B 487's buffer is 448 characters, providing a minimum (and basic) buffer size of 28 characters for each of the 16 possible transmission channels. The 448-character buffer can be divided into from 1 to 16 smaller-sized buffers in increments of 28 characters. Since each of the 16 possible buffers is individually addressable by means of the B 5500's I/O and Result Descriptors, up to 16 messages can be stored or transmitted simultaneously by each B 487. A maximum of 15 B 487 terminal units can be connected to a B 5500 system. • 124 B 484 Dial TWX Terminal Unit The B 484 Dial TWX Terminal Unit provides the facilities required to use stations of the Dial TWX network as inquiry and transmission devices. The B 484 unit contains 480 character positions of inputoutput buffering that can accept messages from up to eight stations of the Dial TWX network simultaneously. The buffer size can be segmented into groups of 60, 120, 240, or 480 positions, depending on the number of channels to be utilized - 8, 4, 2, or 1. A Bell System Model 103A Data-Phone subset must be used as an interface between each channel and the TWX network. Normal telephone dialing procedures are followed in establishing contact between one of the eight channels and each Terminal Unit. Automatic code translation can be provided for the B 487 DTTU by using the B 249 Data Transmission Control Unit in place of the B 5480 DCCU. The B 249 includes the facilities to translate into Burroughs' 6-bit BCL internal code input data in 5level Baudot, 6-level ASCII, or 8-level ASCII codes. Similar code translations on output data can also be performed automatically. The B 249 Data Transmission Control Unit is required, in place of the B 5480 DCCU, when automatic code translation is desired, when multiple B 487 DTTU's are connected to one B 5500 system, and/or when any of the previously-described Burroughs terminal units are intermixed with a B 487 in the same B 5500 system. However, the B 249 can provide individual buffer address ability only for the B 487 DTTU. The B 249 Control Unit provides the interfacing to accommodate up to 15 B 487 Data Transmission Terminal Units, or any combination of B 487's and the other Burroughs terminal units (described above) to a maximum of 15. After a connection between a TWX station and the B 484 Terminal Unit has been established, the operator types an input message on the Dial TWX station keyboard, using a Model 33 or 35 Teletypewriter unit. The message is transmitted and loaded into the Terminal Unit's buffer as it is keyed in. The message is then sent to the B 5480 Data Communication Control Unit, and from there to the I/O control unit at the rate of 30,000 six-bit characters per second. After the message has been processed, the Terminal Unit sends the processor's response to the awaiting channel. Until the station has received the "disconnect code," it can continue to communicate with the processing center. The B 484 Terminal Unit can accept messages larger than the buffer size established for each channel, but only one such message can be accepted at anyone time.. All input-output messages controlled by the Dial TWX Terminal Unit can be monitored by connecting a B 493 Typewriter Inquiry Station to the Terminal Unit. When the monitor station is disconnected, the typewriter can be used in its normal manner. The B 452 Disk File/Data Transmission Terminal Unit must be used in conjunction with the B 487; each B 452 supplies the power and cabinet space for up to two B 487 DTTU's. With the addition of the B 487 Data Transmission Terminal Unit to its line of data communications equipment, Burroughs now offers B 5500 users the equipment needed to operate the computer system from a remote site, to perform message switching, to perform medium-speed batch data transmission, to compile programs from a remote location, and to service simple inquiries. • 125 B 487 Data Transmission Terminal Unit The B 487 Data Transmission Terminal Unit (DTTU) was announced by Burroughs in August, 1965. The B 487, unlike the previously-available 10/65 /' First delivery of Burroughs' data communications equipment for the B 5500 occurred in November, 1964. fA. AUERBACH ~ / 203:111. 100 & ~EDP ST ... ' " AUERBACH BURROUGHS B 5500 SIMULTANEOUS OPERATIONS REPORTS ~ SIMULTANEOUS OPERATIONS The Burroughs B 5500 Information Processing system can concurrently execute: • One or two machine instructions (one per Processor); and • Up to four input-output operations, one for each available B 5283 I/O Channel. Because each of the core storage Memory Modules has its own independent addressing and read/write circuitry, simultaneous memory accesses are possible. The maximum number of truly simultaneous accesses to core memory in a fully-expanded B 5500 system is six: one access by each of the two Processors and one access by each of the four I/O Channels. Six interleaved (not simultaneous) accesses to the same Memory Module are also permitted, although no more than two of these accesses can result from magnetic tape operations. The B 5500 Processor initiates all peripheral input-output operations by sending a 48-bit I/O Descriptor to the I/O control unit. Normally the Processor is then free to perform its operations, unaffecting and unaffected by the concurrent peripheral operations. The Processor's performance is delayed only when it accesses a Memory Module that is already being simultaneously accessed by another Processor or I/O Channel. Since data is transferred to and from the Memory Modules one word at a time, and since the memory cycle time per word is either four or six microseconds (for the B 461 and B 460 Modules, respectively), the Processor will normally be delayed only a minimal amount of time while awaiting access to a "busy" Memory Module. Each I/O Channel is totally dedicated to its assigned input-output task once it has been selected by the I/O control unit. The line printers and data communications terminals have their own internal buffers, and therefore the I/O Channels are released immediately after loading or emptying these buffers. Up to four input-output operations can be performed simultaneously, one per installed I/O Channel, since each I/O Channel functions independently of the others. Jnput-output data transfers utilize the accessed Memory Module only during each 48-bit, single-word transfer; the memory access time per word is either four or six microseconds, depending on whether the B 461 or B 460 Memory Modules are used. The number of memory accesses required for each input-output operation, or, alternatively, the time required for memory accesses as a percentage of the total time for the I/O operation, is specified in the report sections describing the individual B 5500 peripheral units. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 203:121. 100 ~ BURROUGHS B 5500 INSTRUCTION LIST STANDARD EDP REPORTS AUERBACH INSTRUCTION LIST .1 WORD MODE the descriptor address, and bring the word at this address to A. Each Word Mode syllable is 12 bits long and may be one of the following four types, as designated by the two low-order bits. • 11 .12 • • 13 Literal (bit code 00) If (A) is a Program Descriptor, enter the addressed subroutine • Descriptor Call (bit code 11) The ten high-order bits are placed in A as a positive integer. The ten high-order bits are added to (R); the word at this address is brought to A. Then: Operand Call (bit code 10) • If (A) is an operand, construct a descriptor of that operand and place it in A. The ten high order-bits are added to (R); the word at this address is brought to A. Then: • If (A) is a Data Descriptor whose size field is zero, no further action occurs. • If (A) is a Data Descriptor whose size field is non-zero, add the ten low-order bits of (B) to the descriptor address. • If (A) is a Program Descriptor, enter the addressed subroutine. • If (A) is an operand, no further action occurs. • If (A) is a Data Descriptor whose size field is zero, bring the word at the descriptor addres s to A. • If (A) is a Data Descriptor whose size field is non-zero, add the ten low-order bits of (B) to • 14 OPERATOR Operators (bit code 01) OPERATION .Arithmetic ADD SUB MUL DIV IDV RDV DLA DL8 DLM DLD LND LOR LQV LNG GTR LSS LEQ EQL NEQ GEQ (B) + (A)-+B (B) - (A)-+B (B) x (A)-+B (B) :- (A) ~ B; quotient is normalized and rounded. Normalize (A) and (B); then (B) ;. (A) ~ B NormSllize (A) and (B); divide (B) by (A); store remainder in B. (53 & 84) + (A & B) ~ A & B; i. e., double length add. (53 & 54) - (A & B) ~A & B (53 & 54) x (A & B) ~A & B (53 & 54) ;. (A & B) ~ A & B AND: If 1 appears in corresponding bit position of both A and B,retain the 1 in B; otherwise place a 0 in B. Mark A empty. OR: If 1 appears in corresponding bit pOSitions of either A or B, place a 1 in B; otherwise place a 0 in B. Mark A empty. EQUIVALENCE: If corresponding bits of A and B are equal, place a 1 in B; otherwise place a o in B. Mark A empty. NEGATE: Change all zeros to ones and all ones to zeros in Register A, except flag bit is unaltered. If If If If If If (B) > (A), (B) <' (A), (B):::;; (A), (B)= (A), (B)¥- (A), (B);::(A), 1 -+ B; 1 -+ B; 1 -+ B; 1 -+ B; 1 ~ B; 1 -+ B; otherwise otherwise otherwise otherwise otherwise otherwise 0 ~ B. 0 ~ B. 0 ~ B. 0 ---»- B. 0 ~ B. 0 -+ B. ,/ (Contd. ) 10/65 A ., AUERBACH 203: 121. 141 INSTRUCTION LIST .14 Word Mode Operators (Contd.) OPERATOR OPERATION Logic (Contd.) nnFCE nnFCL nnTFB nnDIA nnDffi Compare nn bits of (A) to nn bits of (B); If equal, 1-7A; otherwise 0-7A. Compare nn bits of (A) to nn bits of (B); If (B) < (A), I-?A; otherwise 0 ---3!0A. Copy nn bits from A to B. nn-7 G & H unless nn = o. nn-7 K & V unless nn = o. MDS MOP TOP SSN SSP CHS Set flag bit of (A) to 1, making (A) a descriptor. Set flag bit of (A) to 0, making (A) an operand. If flag bit of (A) is 0, 1-7A; otherwise O-?A. Set sign of (A) to 1. Set sign of (A) to o. Change sign of (A). FBS Search for word with flag bit on (Le. , descriptor) beginning at address in A. Place in A the address of first descriptor found. Compare a field in (A) to a list of words beginning at the address in B, placing each list word in (B) for the test. When (A) is < (B), place the address of the word in B into A. - LLL Data Transfers XCH DUP DEL SSF Exchange (A) and (B). Adjust stack until A is empty and B is full; duplicate (B) in A. Delete the top word of stack; L e., (A). If two low-order bits of (A) are zeros, store (F) in B; if they are ones, store (B) in S; if only the low-order bit is zero, set subprogram switch and store (B) in F; if only the low-order bit is one, store (8) in B. In the following store operators, if A contains a descriptor, (B) is stored in the address it specifies. If A contains an operand, (B) is stored at the address formed by modifying (A) by (R) or (F). SND STD IBN ISD CND cm Is1S0 CTC CTF FTC FTF Store (B); mark A empty, but retain (B). Store (B); mark A and B empty. Convert (B) to an integer and store; mark A empty, but retain (B). Convert (B) to an integer and store; mark A and B empty. If low-order bit of (A) is 1, proceed as in ISN, above; otherwise proceed as in SND, above. If low-order bit of (A) is 1, proceed as in lSD, above; otherwise proceed as in STD, above. Store a G- and H-specified field from (A), with a length of Is, in the low order bits of A, and set rest of (A) to zero. Store the 15 low-order bits of (A) in the 15 low-order bits of (B). Store the 15 low-order bits of (A) in bits 16 through 30 of (B). Store bits 16 through 30 of (A) in the 15 low-order bits of (B). Store bits 16 through 30 of (A) in bits 16 through 30 of (B). \ © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 BURROUGHS B 5500 203: 121. 142 • 14 Word Mode Operators (Contd.) OPERATION OPERATOR Branching In all branching operations, if (A) is an operand it specifies number of syllables to be jumped. If (A) is a descriptor, it specifies destination address. BFW BBW BFC BBC Branch forward unconditionally. Branch backward unconditionally. Branch forward unless low-order bit of (B) is 1 (set by compare operations). Branch backward unless low-order bit of (B) is 1 (set by compare operations). CFD If a G- and H-specified.field of (B) is not zero, mark B empty, and proceed as in BFW, above. If G- and H-specified field of (B) is not zero, proceed as in BFW, above. If a G- and H-specified field of (B) is not zero, mark B empty, and proceed as in BBW, above. If a G- and H-specified field of (B) is not zero, proceed as in BBW, above. CFN CBD CBN Subroutine Operators MKS XlT RTN BRT CMN MARK STACK: Push down (A) and (B) into stack. Construct Mark Stack control word containing (F) and (R), store it in stack, and copy its stack address into F. EXIT: (A subroutine return in the Word Mode) Reset contents of C, L, G, H, K, V. R. and F from the Return and Mark Stack control words. Mark A and B empty. RETURN: (A subroutine return in the Character Mode) Adjust stack until A is full and B is empty. Reset contents of C, L, G, H, K, V, R, and F from the Return and Mark Stack control words. BRANCH RETURN: If presence bit is 1, set S and C from (A); restore R and F from Mark Stack control word; mark A and B empty. ENTER CHARACTER MODE IN-LINE: Push (A) and (B) into stack. Construct Return control word containing (C) and (L), store it in stack, and copy its stack address into F. Store the word below the Return control word in S, and set sub-program and Character-Mode switches. Miscellaneous Operators PRL COC CDC COM LOD INX TUS TIO PROGRAM RELEASE CONSTRUCT OPERAND CALL CONSTRUCT DESCRIPTOR CALL COMMUNICATION: Store (A) in a specific location and set communication bit in Interrupt register. LOAD OPERA TOR INDEX: Add 15 low-order bits of (B) to (A). Store in A a peripheral unit's status word, and set a bit indicating each unit's readiness or non-readiness. Store in A an integer indicating the lowest-numbered currently-available 1/0 Channel. Store a zero if all Channels are busy. / Control State Operators Note: The following operators may be used only when the Processor is in the Control State as a result of an interrupt. All the preceding Normal State operators may also be used in the Control State. HP2 no IPI IP2 ITI RTR lOR Cause Processor 2 to store its registers in the stack and halt. Store (A) in a specific location; send an Initiate 1/0 signal to Central Control for selection of an 1/0 Channel. Set Processor 1 's registers from fixed storage location and exit from Control State. Store' (A) in a specifiC location and activate Processor 2. Interrogate the Interrupt Register; if any interrupt bit is on, transfer control to the corresponding storage location. Timer setting~A. 1/0 RELEASE: Set presence bit to 1 in location formed by modifying (A) by (R) or (F). (Contd. ) 10/65 fA.., AUERBACH 203: 121.200 INSTRUCTION LIST .2 CHARACTER MODE Each Character Mode syllable is a 12-bit operator consisting of a 6-bit repeat field and a 6-bit operation code. The following operators are available. OPERATION OPERATOR REPEAT OP. CODE Arithmetic Note: Zone bits are ignored; T/F toggle..-.?>l if field overflow occurs. nn nn FAD FSV (DC) + (SC)--7DC, for nn successive chars. (DC) - (SC)..-.?> DC, for nn successive chars. r r r r r r b TLS TEQ TNE TGR TEL TEG BIT If If If If If If If (SC) (SC) (SC) (SC) (SC) (SC) (SB) nn nn nn nn nn nn CEQ CNE CGR CEL CLS CEG If If If If If If (SC) = (SC) -# (SC) > (SC) < (SC)"< (SC) ~ < r, T IF toggle -7 1. = r, 01 r, > r, < r, :; r, -;;;; b, T/F toggle -71. T IF toggle -7 L. T IF toggle -7 i. T IF toggle -71. T/F toggle -71. T IF toggle -71. (DC), (DC), (DC), (DC), (DC), (DC), for nn chars, for nn chars, for nn chars, for nn chars, for nn chars, for nn chars, T/F T/F T/F T/F T/F T/F toggle -71. toggle-71. toggle-71. toggle-71. toggle-71. toggle -71. Data Transfer nn nn nn nn nn TRW TRP TRS TRN TRZ TBN (SW) -7 DW, for nn successive words. (PC)-7DC, for nn successive characters. (SC) -7DC, for nn successive characters. Same as TRS, but transfer numeric bits only. Same as TRS, but transfer zone bits only. Replace with blanks all characters in a.field specified by S and K that are equal to or less than zerOB-. Terminate operation when a greater-than-zero character is encountered. Skip Operators \ nn nn nn nn nn nn SFS SRS SFD SRD BSS BSD Skip Skip Skip Skip Skip Skip forward over nn source characters. backward over nn source characters. forward over nn destination characters. backward over nn destination characters. nn successive source bits. nn successive destination bits.. Address Operators \ SSA SDA SES SED TSA TDA SCA Set source address: next 3 source chars ~M & G; 0 --7H. Set destination address: next 3 destination chars ~S & K; 0--7V. Set source address from a word in stack. Set destination address from a word in stack. Store source address in stack. Store destination address in stack. Store control address (contents of C & L) in stack. © 1965 AUERBACH Corporotion ond AUERBACH Info, Inc. 10/65 BURROUGHS B 5500 203: 121.201 .2 CHARACTER MODE (Contd.) OPERATOR REPEAT OPERATION OP. CODE Jump Operators nn JFW JRV JFC JRC BNS ENS JNS nn JNC nn nn nn nn nn - Jump forward nn syllables. Jump backward nn syllables. Jump forward nn syllables unless T/F toggle = 1. Jump backward nn syllables unless T/F toggle = 1. Execute the following loop nn times. Identifies end of a program loop. Jump forward nn syllables to a syllable following end of loop (ENS), do not count around loop. If T/F toggle = 0, proceed as in JNS. Conversion Operators nn OCV nn ICV Convert 1 octal word in source string to nn decimal digits (8 max.) in destination string. Convert nn decimal digits (8 max.) in source string to 1-word octal integer in destination string. Miscellaneous Operators - SEC INC STC BIS Bm CRF EXC - CMX nn nn nn nn nn nn .3 Set R (tally register) to nn. Increment (R) by' nn; ignore overflow. Store (R) in stack at location (F + nn). Set nn successive bits in destination string to 1. Set nn successive bits in destination string to zero. Use 'the 6 low-order bits of (F + nn) as repeat field for next syllable. Exit from Character Mode and re-enter Word Mode, resetting Registers C, L, G, H, K, V, S, F, and R from control words in the stack. EXIT CHARACTER MODE IN-LINE (same as EXC, above, except that Registers C and L are not set). INSTRUCTION LIST NOMENCLA TURE PC: ••••••••••••• next character in the program segment. R: ..•••.•..•.... R register. r: ••••.•.•.•••.. a character used as a literal. S: • • • • • . • . • • • • . . S register. s: •••.••.....••. number of bits to shift a result (included in operator syllable). SC: •••.•••...••. next character in the source string. SW: • . • . • • • • . . . • . next word in the source string. S3:} . . . • • • . . . . . . . the third and fourth locaS4: tions in the stack (core storage locations addressed by the S register). T/F: ...•...•••.• True/False toggle. V: • • . . . • • . . • • . • • V register. ( ):. . . • • . • • • . . • • the contents of a register or location. Note: The functions of all Processor registers are described in Paragraph 203:051. 24. A: •••••••••••••• A register; top location in stack. B: •••••••••••••• B register; second location in stack. b: •••••••••••••• a bit used as a literal in repeat field of a Character Mode syllable. C: •••••••••••.•• C register. DC: ••••••••••••. next character in the destination string. DW: •••••••.••... next word in the destination string. F: •••••.•••••••• F register. G: • • • • • • • • • • • • . . G register. H: ••••••••••••.• H register. K: • • • • • • • • • • • • • • K register. L:" • • • • • • • • • • • • . • L register. 1: •••••••••••••• number of characters (included in operator syllable) . M: ••••••••••••.. M register. nn: ••••••••••••• a 6-bit literal. 10/65 fA AUERBACH • 1. 203:141. 100 SlANDARD BURROUGHS B 5500 DATA CODE TABLE /AEDP AUERBAC~ e RUGUS DATA CODE TABLE The B 5500 Information Processing System can manipulate data internally either in 48-bit binary words or in 6-bit BCD characters. Input-output operations can utilize three basic coding systems: binary, 6-bit Burroughs Common Language, and the standard Hollerith card code. Card readers and punches can accept data in Hollerith or binary code. The magnetic drum storage unit reads and records only in the binary mode. The supervisory printer and line printers accept and print data only in BCL code, but the magnetic tape units and Disk File can utilize binary-coded information as well as BCL. Burroughs Common Language code is also the standard input-output data code for the paper tape devices and data communications equipment, although a paper tape code translator permits use of any 5, 6, 7, or 8-level code in read and punch operations, and the 5-level Baudot code can be used with Teletype terminal units. The table of data codes below consolidates in one chart the several types of internal and external codes used in the B 5500 system. CHAR. Blank INTERNAL CODE OCTAL 8421 SA CODE 11 0000 60 BCL CODE SA 01 8421 0000 CARD CODE ZONE CHAR. SA NUM. - - INTERNAL CODE OCTAL 8421 CODE BCLCODE CARD CODE SA 8421 ZONE NUM. H 01 1000 30 11 1000 12 8 I 01 1001 31 11 1001 12 9 • 10 0000 40 10 1010 11 0 J 10 0001 41 10 0001 11 I K 10 0010 42 10 0010 11 2 3 01 1010 32 11 1011 12 8-3 [ 01 1011 33 11 1100 12 8-4 ( 01 1101 35 11 1101 12 8-5 < 01 1110 36 11 1110 12 8-6 L 10 0011 43 10 0011 11 01 1111 37 11 1111 12 8-7 10 0100 44 10 0100 11 4 & 01 1100 34 11 0000 12 - M N 10 0101 45 10 0101 11 5 . 10 1010 52 10 1011 11 8-3 0 10 0110 46 10 0110 11 6 10 1011 53 10 1100 11 8-4 P 10 0111 47 10 0111 11 7 S ) 10 1101 55 10 1101 11 8-5 Q 10 1000 50 10 1000 11 8 ; 10 1110 56 10 1110 11 8-6 R 10 1001 51 10 1001 11 9 ~ 10 1111 57 10 1111 11 8-7 - 10 0000 11 - I 1100 01 1010 0 8-2 54 74 1100 II 10 S II 0010 62 01 0010 0 2 / 11 0001 61 I T 11 0011 63 01 0011 0 3 11 1010 72 11 1011 73 = 11 1101 75 01 J 11 1110 76 01 " 11 1111 77 01 1111 % 0001 a 01 1011 0 8-3 U II 0100 64 01 0100 0 4 01 1100 0 8-4 V 11 0101 65 01 0101 0 5 1101 0 8-5 W 11 0110 66 01 0110 0 6 1110 0 d-6 X 11 0111 67 01 0111 0 7 0 8-7 V 11 1000 70 01 1000 0 8 Z 11 1001 71 01 1001 0 9 0 GO = 00 00 1010 - 0 1 00 0001 01 00 0001 2 00 GOl0 02 00 0010 01 1111 - 8-7 3 00 GOII 03 00 0011 11 1010 12 a 4 GO 0100 04 00 0100 11 0001 12 I 5 GO 0101 05 00 0101 ; CO 1010 12 00 1011 @ CO lDll 13 00 1100 : 00 1101 15 00 1101 > 00 1110 16 00 1110 ~ 00 1111 17 00 + 01 0000 20 A 01 0001 21 8-3 8-4 8-5 8-6 B 01 0010 22 II 0010 12 2 6 00 0110 06 00 0110 C 01 0011 23 11 0011 12 3 7 00 0111 07 00 0111 D 01 0100 24 II 0100 12 4 8 00 1000 10 00 1000 E ;'1 0101 :;5 11 0101 12 5 9 GO lGOI 11 00 1001 F 01 0110 26 11 0110 12 6 G 01 0111 27 11 0111 12 7 ? 00 1100 14 00 0000 - - 1 2 3 4 5 6 7 8 9 ALL OTHER CARD CODES Table reproduced from Burroughs B 5500 Information Processing Systems Reference Manual, Appendix A, p. A-I. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 & 203. I 51 . 100 STAND ... BURROUGHS B 5500 PROBLEM ORIENTED FACILITIES /AEDP AUER8A~ R£PIIRTS ~ PROBLEM ORIENTED FACILITIES ·1 UTILITY ROUTINES · 11 Simulators of Other Computers: ..•.. · 12 · 13 Simulation by Other Computers: .•... initializing and can therefore be re-executed as desired. In addition, any number of SORT statements canbe used within a single COBOL program. none. An example of the speed of the Tape Sort Generator is offered by Burroughs. A sort of 50,000 100character records, blocked at 10 records per block and using a 10-character sort key, will take 12 minutes and 50 seconds on a'single-processor B 5500 that has two I/O Channels, 32K words of core storage, and six available 66KC magnetic tape units. none. Data Sorting and Merging B 5500 Tape Sort Generator Reference: ...••.• Record size: . . . . . . Block size: ...•. Key size: File size: Number of tapes: Date available: Description: Sorting on the B 5500 Using COBOL-61 Extended, Burroughs Publication 1021334. from 1 to 512 eight-character words. from 1 to 1,023 words. up to 25 fields within each key, with a maximum of 63 characters per field. any number of input reels that can be accommodated before any of the available scratch tapes is filled. from 3 to 8. April 1963. B 5500 Disk Sort Generator Reference: . . • . . . . Record size: Block size: . . . • . . . Key size: . . . . . . . • File size: ...•..•• Number of discs: The B 5500 Tape Sort Generator is an integral part of the COBOL Compiler, described in Report Sections 203:162 (COBOL language) and 203:182 (COBOL translator). The generator is activated by the SORT verb, an elective feature of COBOL-61 Extended. File and record descriptions are entered in the source program's Data Division section, and the maximum amount of core storage to be used for sorting is specified in the Environment Division. Number of tapes: ... Date available: Description: B 5500 users with available Disk File storage can utilize the more recent Disk Sort Generator. The Disk Sort is also an integral part of the B 5500's COBOL compiler, and is activated by the SORT verb in the same manner as the Tape Sort Generator. The Tape Sort Generator sorts input records from magnetic tape in ascending or descending sequence according to key information contained in up to 25 fields of each record. Only fixed-length records can be sorted, and the record length must be a multiple of eight characters (one B 5500 word). From three to eight magnetic tapes can be used for intermediate storage during the sorting operation, and the sorted output records are written on magnetic tape. The generator uses a "vector sort" technique' during the internal sort or "stringing" phase, and a polyphase Fibonacci merge during the output phase. A simple sort of all records results when the SORT statement with the USING File Name Option is specified in the Procedures Division. However, the INPUT PROCEDURE and OUTPUT PROCEDURE can be utilized to enable the programmer to manipulate the records both before and after the actual sorting operation. The RELEASE verb can be used within the INPUT PROCEDURE to specify only selected records to be sorted. Each SORT statement is self- preliminary information. from 1 to 1,023 eightcharacter words. from 1 to 1,023 eightcharacter words. up to 25 fields within each key, with a maximum of 63 characters per field. limited only by the amount of available intermediate storage (disc and tape). any number that can contain between 1. 1 and 2.2 times the amount of data in the input file. two. November, 1965. Functionally, the Disk Sort program attempts to make exclusive use of Disk. File storage. However; if the amount of available disc storage is exhausted before the sort or "stringing" phase is complete, the Disk Sort program will use magnetic tapes as overflow storage units. All the strings are then merged, and the sorted output file is written on any available output device. In order to ensure that the Sort program will function in a disc-only mode, disc storage must be made available in an amount at least 2.2 times the size of the input file. The Disk Sort program will function with any B 5500 system capable of performing COBOL compilations. Sort times for the B 5500 Disk Sort program have not been made available to date. . 14 Report Writing: • • •• © 1965 AUERBACH Corporation and AUERBACH Info, Inc. none • 10/65 BURROUGHS B 5500 203:151. 150 . 15 Data Transcription Integration: . . . . . Interpolation and approximation: .. Matrix algebra and determinants: . .. Linear programming: . . . .. Statistics: •..... Data correlation: .. The only transcription routines announced to date are integral parts of the Master Control Program. The card-to-tape routine can be used to keep the card reader(s) operating at maximum speed by transcribing input data from cards to magnetic tape, and then reading it from the tape when the program is ready to utilize the .data. If the operator indicates that no tape unit is available for the transcription, data is transcribed instead from cards to the Storage Drum or Disk File. Square root: Exponential: Logarithm: Sine: . . . . . . . . . Cosine: . . . . . . Arcsine: . . . . . . Tangent: . . . . . . Arctangent: .... "Partial List of Scientific Library Procedures for the Burroughs B 5500. " immediate. The document referenced above lists 99mathematical and scientific routines that will be provided for the B 5500 by the manufacturer. These routines range in scope from "Tangent" to "Non-linear Multiple Regression." The major categories, and the number of routines falling into each, are as follows: Trigonometric functions: Hyperbolic functions: . . . . .. Exponential and logarithmic functions: . . . .. Root functions: Polynomials, differential equations, and special functions:. 10/65 Time, msec Double-Precision Functions none. Scientific Library Procedures Date available: Description: 3. 7. 4. Square root: Exponential: Logarithm: Size: . . . • . . . . . . Cosine: . . . . . . . . Arcsine: . . . . . . . Tangent: . . . . . . . Arctangent: .17 Reference: . . . . . .. 6. Single-Precision Functions Data transcriptions can also be performed off-line on the I/O-compatible Burroughs B 100/200/300 computer systems. File Maintenance: .. 6. Execution times and storage requirements for some of the standard functions and matrix algebra routines are listed below. The tape-to-printer routine is used when the number of simultaneously-running programs requiring printer output exceeds the number of Line Printers in the system. Data to be printed is written on magnetic tape. A job number identifies each file, so the output from several programs can be written on the same tape reel. When a printer becomes available, the Master Control Program transcribes the accumulated output data from tape to printer. .16 8. . . . . . Addition or subtraction of MxN matrices: .•.... Multiplication of 50 x 50 matrices: Inversion For symmetric matrices: For non-symmetric matrices: •.•.•• Transposition: .•.. 3. 4. 3. to to to to to to to 1.13 1.19 1. 28 1.33 2.58 1. 70 1. 71 28 32 29 38 40 64 52 59 Time, mseci Matrix Algebra 7. 0.96 0.96 0.66 0.83 0.88 2.44 1. 33 1. 20 / 1. 55 10.50 to 12.47 6.22 to 13.06 9. 15 to 14.12 9.62 to 14.59 26.84 to 28.37 14.64 to 18.66 13.16 to 18.75 Time, msec 0.180NM + O. 070N + 0.082 33,440. (N + 1)3 x 0.181. 0.163NM + O. 080N + 0.093. Note: Accuracy is at least 11 significant decimal digits for Single-precision functions and 23 for double-precision functions. 37. A AUERBACH '" -& 203:161.100 m"", ~EDP AUERBAC~ REPURTS - BURROUGHS B 5500 PROCESS ORIENTED LANGUAGE ALGOL ~ PROCESS ORIENTED LANGUAGE: ALGOL .1 GENERAL .11 Identity: ..•.•••••. Extended ALGOL. .12 Origin: •••••••.••. Burroughs Corporation. .13 References: ••••••• Burroughs B 5500 Extended ALGOL Reference Manual. B'iiITOii'ghs B 5500 Stream Procedure Reference Manual. B'iiITOii'ghs B 5500 Extended ALGOL Input-Output Reference Manual. • 14 Description ALGOL is a computation-oriented programming language designed primarily for scientific and engineering applications. Extended ALGOL for the B 5500 includes virtually all of the facilities of ALGOL 60 and a number of machine-dependent extensions to take advantage of the capabilities of the B 5500. Among the extensions to ALGOL 60 are: • Input-output constructs to permit effective utilization of all peripheral devices, including the Disk File. • Standard file label-checking facilities. • Input-output buffer control. • Data formatting and editing facilities. • B 5500 Character Mode operations. • Partial-word and double-precision arithmetic operations. • Ability to insert specialized corrective routines for arithmetic error-condition interrupts. • Source language debugging facilities. • Constructs to assist in multisequencing control. • Data communications inquiry statements. The input...,output facilities are patterned after those of FORTRAN, in that the standard forms of the READ and WRITE statements control the input or output of one logical record. Special forms of these verbs, however, can be used to control multiple data records. The READ and WRITE statements normally must reference a FILE declaration, a FORMAT declaration, and a LIST declaration. The FILE declaration specifies the name of the file, the size and number of buffer areas to be allocated, the class of output medium desired, and magnetic tape label and blocking information. The FORMAT © declaration concisely describes the editing and conversions to be performed upon each item of input or output data. The LIST declaration specifies the list of variables whose values comprise the input or output record; alternatively, the list can be included in the READ or WRITE statement itself. When a READ statement is encountered at execution time, the contents of one input buffer are selected according to the specified FILE declaration, edited according to the FORMA T declaration, and stored according to the LIST. Then the Processor is freed to execute succeeding program statements while the buffer area is refilled from the appropriate input device. When more than one buffer area is declared for a file, they are sequenced on a first-in first-out basis. The RELEASE statement fills an input buffer or empties an output buffer with no editing or internal transfers; it is used mainly in conjunction with user-coded editing operations in the Character Mode. Two additional READ and WRITE constructs have recently been added to Extended ALGOL: an Edit and Move READ and an Edit and Move WRITE. When these versions of READ and WRITE are used, I/O files and buffer areas do not need to be explicitly designated. With the Edit and Move optil'ns, data is edited according to format information within the READ/WRITE statement and is assigned to program variables designated in a supplied list. Extended ALGOL permits utilization of the B 5500's Character Mode operations through implementation of STREAM PROCEDURE declarations. This facility is described in detail in Paragraph .43 of this report section. Extended ALGOL for the B 5500 also provides language facilities to read and write data records on Burroughs Disk Files. In the Disk File declaration statement, many parameters can be entered to furnish the ALGOL Compiler with detailed information concerning the manner in which the input-output file shall be controlled. The file can be reserved for exclusive use by the current program. The file can also be designated as a temporary or permanent member of the system. The record access technique can be specified as SERIAL, RANDOM, or UPDATE, and the number and size of input-output buffers can be designated. The data record specifications include the blocking considerations and the record size. The SERIAL access technique is specified when records are to be read or written in a sequential order. The RANDOM technique is used when the primary objective is either to read and write records in random order, or to update records in a random order. The UPDATE technique is used only when the primary programming goal is to update records in a sequential manner. 1965 AUERBACH Corporotion and AUERBACH Info, Inc. 10/65 203:161. 140 .14 BURROUGHS B 5500 Description (Contd.) TABLE I: EXTENDED ALGOL SOURCE AND OBJECT PROGRAM Disk File I/O statements include specialized versions of READ and WRITE that require specification of the relative address of the file's record that is to be read or written. The FORMAT and IJST declarations are used exactly as in other input-output operations - to edit and store the record after input or just prior to output. The READ SEEK statement can be used with RANDOM files to find a relatively-addressed record and to store it in a buffer area in anticipation of a subsequent READ or WRITE statement. The relative address of the current record within the file (i. e., the "record pointer") is adjusted a specified number of times by the SPACE statement. The REWIND statement caus'es the record pointer to be reset to the address of the first record in the file. After a temporary file has served its purpose in the program, it will be automatically deleted from the system unless the LOCK statement is issued to change the file's status to permanent. An example of a brief Extended ALGOL source program and its generated object code is presented in Table I. The restrictions and extensions of B 5500 Extended ALGOL relative to the ALGOL 60 Reference Language are summarized below. The language specifications for ALGOL 60 were published in the Communications of the ACM, Volume 3, No.5, May, 1960. .141 Restrictions Relative to ALGOL 60 (1) Due to limitations of the B 5500 character set (64 characters), lower-case letters are not permitted and different symbols are substituted for ten ALGOL operations (see Paragraph .411). INTEGER I; INTEGER ARRAY A, B, C, D, E, F, G, H [0:100]; FOR 1-- 1 STEP 1 UNTIL 100 DO BEGIN A [I]-B [I] D[I]--E[I] H [I].-A [I] OBJECT PROGRAM (Symbolic listing; not produced by the Compiler) LITC 1 LlTC 3 BFW OPDC I LITC 1 ADD LITC I ISN LITC 144 LEQ LITC 40 BFC OPDC I DESCA OPDC I OPDCB OPDC I OPDC C ADD XCH OPDC I DESCD OPDC I OPDC E OPDC I OPDCF ADD OPDCI OPDC G ADD XCH ISD OPDC I DESC H OPDC I OPDCA OPDC I OPDCD MUL XCH ISD LITC 51 BBW NOTES (3) Every statement label must be declared in a LABEL declaration at the head of the innermost block in which it appears. (4) A procedure or switch must be declared before it can be referenced in a program. (The FORWARD'reference declaration makes it pos~ible to handle cases in which, for example, procedure A calls procedure B, which in turn calls procedure A. ) DESC A = Descriptor Call for descriptor of the array A. OPDC I = Operand Call for the operand I. LITC 40 = Literal Call for the value octal 40 (decimal 32). Operator syllables are defined in the Instruction List, 203:121.14. There are 56 reserved words which can never be used as names. (4) The functions TIME, REAL, and BOOLEAN are provided in addition to the nine functions recommended in the ALGOL 60 report (see Paragraph .411) • (5) The aritlunetic operator MOD facilitates operations on moduli; e. g., P MOD 8 is 3 when P is 19. • 142 Extensions Relative to ALGOL 60 (1) Complete input-output facilities are provided (see Description above). (2) STREAM PROCEDURE declarations pern;lit explicit use of the B 5500 Character Mode for operations on "strings" of alphameric characters. (3) Data items may be of type ALPHA (i. e., a set of up to 6 alphameric characters), in addition to the types REAL, INTEGER, and BOOLEAN. 10/65 + C [IJ; + F[I] + G[I]; x D [I] END; ISD (2) Unsigned integers may be used as statement labels. (5) SOURCE PROGRAM A. AUERBACH (6) Parial Word Designators allow operations on specified portions of the word designated by any simple or subscripted variable, function designator, or aritlunetic expression enclosed in parentheses; e. g., X. [3:6] specifies use of 6 bits, beginning with bit 3, of the current bit representation of X. (Contd. ) 203:161. 142 PROCESS ORIENTED LANGUAGE: ALGOL .142 Extension Relative to ALGOL 60 (Contd.) . 22 Statement: ••.•.... an imperative description of procedural steps. a sequence of words; basic statements are separated by semicolons. Declaration: ..•..•. defines the characteristics of and assigns identifiers to one or more entities; e.g., variables, arrays, files, switches. Compound statement: . any number of basic statements, delimited by BEGIN and END. Block: . . . • . . . ., . . any number of declarations, followed by any number of basic statements, compound statements, or blocks, delimited by BEGIN and END. Program: . . . . . . . . . a block or compound statement. Procedure declaration: PROCEDURE, procedure name, formal parameter list, followed by a statement, compound statement, or block. Procedures may be subroutines or functions and may be called recursively. (7) The DEFINE declaration causes an identifier to be replaced by its definition wherever it occurs within the block that contains the declaration. (8) The FILL statement fills one row of an array with a list of specified values. (9) The MONITOR and DUMP declarations perform useful diagnostic functions, as described in Paragraph 202:181.45. (10) An additional form of the FOR loop control statement is provided: FOR V -- AEI STEP AE2 WHILE BE DO . . • , where AE1 and AE2 are arithmetic expressions and BE is a Boolean (true-false) expression. (11) Two additional iterative statements are provided: DOS UNTIL BE, in which the statement S is repeated until the Boolean expression BE becomes true; and WHILE BE DO S, in which the iteration ceases When the Boolean expression BE becomes false. (12) A Concatenate expression provides the facility to link together selected bits of named varabIes to form a concatenated, integer result. The ampersand (&) is used as the Concatenate operator. . 23 (13) A generalized ZIP statement causes all information enclosed by ZIP and END to be recognized by the MCP as Control Card or Program Parameter Card information. (1~ (15) A WHEN statement provides the means to suspend the processing of a program or program segment for a specified number of seconds. (16) Data communications terminals can be called upon to enter input data by means of a FILL WITH INQUffiY statement. A special form of the WRITE statement is available to send responses to designate terminal units. (18) Specialized versions of the READ and WRITE statements, as well as the new READ SEEK, SPACE, REWIND, and LOCK statements, are provided to control data files stored on Disk File storage. .15 Publication Date: .... November, 1962 (preliminary specifications). December, 1964 (current language manuals) . .2 PROGRAM STRUCTURE .21 Divisions: .••.•..•• programs are not separated into divisions. Data Entities File: • . . • . . . . . • . . a group of related records; e. g., a tape, a deck of cards. Record: . . • . . . . . . . a group of items transferred by a single input or output statement. Block: .••.••••••• the data held in a section of external storage. Array: ••.....•... a multidimensional arrangement of similar, subscripted items. Item: ......••..•• an INTEGER variable or constant. a REAL (floating point) variable or constant. a BOOLEAN variable or constant. an ALPHA item. String: ..•....•.•. a group of alphameric characters delimited by quotes A WAIT statement suspends processing of one program or program segment until a specified condition exists in a designated word location in core storage. (17) Specialized versions of the READ and WRITE statements are available to utiliZe directly the B 5500's Console Printer-Keyboard. Procedure Entities (") .24 . Names .241 Simple name formation Alphabet: . . . • . . . . A to Z, 0 to 9. Size: . . . . . . . . • . . 1 to 63 characters. Avoid key words: •.. yes; 56 reserved words. Formation rule: . . . . must begin with a letter, and cannot contain spaces or special characters. .242 DesignatorsProcedures: . . . . . . none; LABEL and PROCEDURE declarations must be used to define the type of entity associated with each identifier . © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 203:161. 242 BURROUGHS B 5500 .242 Designators (Contd.) Data: ••..••..••• none; type, ARRAY, FILE, and SWITCH declarations must be used. Equipment:. • . . • . . no unit designators in Extended ALGOL; I/O files are specified by label names recognized by the Master Control Program. Comments: . . . . . . . delimiters COMMENT and ";" or a sequence of characters following END. Translator control: . none. · 25 Number of Names Region of Meaning of Names . 271 Universal names: . . . . none. . 272 Local names: . . . . . . all identifiers are local to the block in which they are declared. • 273 Non-local names Designator:. . . . . . • all identifiers not declared in a block are non-local to that block. A non-local identifier has the same meaning as it has in the region within which the current block is nested. Restrictions: ...•.• none. Note: The value of a variable is lost after exit from the block in which it is declared unless it is declared as OWN. .3 DA TA DESCRIPTION .31 Methods of Direct Data Description .311 Concise item picture: . yes; FORMA T declarations; e. g., FORMAT IN F3 (A6, X2, 416, 2E9.2, F6.1). 10/65 Files and Reels: .••. standard B 5500 Label Record is used at beginning and end of all files and reels. File-control portion is 80 characters long and has fixed format. .33 Records and Blocks .331 Variable record size: • dynamic . • 332 Variable block size: .. fixed for cards and printer; preset variable for tape. .333 Record size range: ... 1 to N blocks. .334 Block size range Punched cards: .•.. 80 columns. PrlDter: .•••••••• 120 or 132 characters. Magnetic tape: .••.• 1 to 1,023 words (1 to 4, 096 in Read Only mode). .33p Choice of record size: input-output LIST declarations. .336 Choice. of block size: . FILE declarations or within tape labels. .337 Se"quence control: ..•• 1 or more logical records per READ or WRITE statement . . 338 In-out error control: • automatic, by MCP. .339 Blocking control: ..•. FILE declaration or tape label . ".261 All entities: ••...•. practically unlimited. • 264 Equipment: . . . . . . . . limited by system configuration; equipment is assigned by Master Control Program at run time. • 27 .32 Structure of Data Names · 251 Qualified names: . . . . none. · 252 SubscriptsNumber per item: •• unlimited. Class may beAny numeric variable: • . • • • yes. Literal: • . . . . . . yes. Expression: •..• yes. Form maybeSigned:. . . . • • . • yes. Truncated fraction: ..•.•••• no. Rounded fraction:. yes. · 255 SynonymsPreset: •• ~ •...•. by DEFINE. Dynamically set: •.. no. • 26 .312" List by kind: .•...•. yes; type declarations; e.g., INTEGER I, J, K. .313 Qualify by adjective: .. no. .314 Qualify by phrase: ••• no. .315 Qualify by code: •...• no . . 316 Hierarchy by list: ... no. .317 Level by indenting: ... no. .318 Level by coding: ..•• no. .34 Data Items .341 Designation of class: • type declarations. .342 Possible classes Integer: ..•.•.... yes; INTEGER. Fixed point: •••••• no. Floating point: •••.• yes; REAL. DOUble precision floating: •••..... yes; DOUBLE statement . LOgical: . . . . . . . . . yes; BOOLEAN • Alphameric: .•.••• yes; ALPHA. Complex: . . • • • . . . no . · 343 Choice of external radix: • • • . • • . . . . yes. · 344 Possible external radices Decimal: ..••.•.•. yes. Binary: .•.••••.• yes (not for card or printer output). • 345 Internal justification: . automatic right justification for integer, logical, and alpha items. .346 Choice of external code: • • • • . • . • • • . FORMA T declarations. .347 Possible exte.rnal codes Punched cards: •... Hollerith as in Data Code Table or (input only) column binary. Magnetic tape: . . . . . alphameric as in Data Code Table (203:141.100) or binary. .348 Internal item size Variable size: ..••. fixed, except strings are preset variable. (Contd.) fA.. AUERBACH " / 203: 161. 348 PROCESS ORIENTED LANGUAGE: ALGOL . 348 Internal item size (Contd.) Arithmetic (Contd.) Designation: •....• none, except strings are delimited by quotes ("). Range Integer: •.....• 1 word; 39 bits + sign. Floating point numeric Single precision (REAL): •.... 1 word; 39 bits + sign for integer part; 6 bits + sign for exponent. Double precision (DOUBLE): ... 2 words; 78 bits + sign for integer part; 6 bits + sign for exponent. Logical (BOOLEAN): 1 word. Alphameric (ALPHA): .•.... 1 word; 6 characters max. String (in Stream Procedures): .... 1 to 63 characters. Note: Partial Word Designators permit operations on specified portions of the 48-bit word assigned to each variable; e. g., X. [3:6] specifies 6 bits, beginning with bit 3, of X. Also, the Concatenate operator (&) permits linking of specified portions of 48-bit words. . 349 Sign provision: . . . . . optional. • 35 Data Values Special Description Facilities .361 Duplicate format: .... by multiple references to a single FORMA T declaration. . 362 Re-definition: . . . . . . none . .363 Table description Subscription: ....•. mandatory. Multi-subscripts: ••• unlimited number. Level of item: .••.. variables. .364 Other subscriptible entities: . . . . . . . . . none. ! \ .4 OPERATION REPERTOmE .41 Formulae .411 Operator list - i\ "" Functions ABS (E) ••••••••• absolute value of E. SIGN (E). • . • . • . • • produces + 1 if E > 0, 0 if E = 0, or -1 if E < O. SQRT (E) ••••••.• square root of E. SIN (E) •••••••••• sine of E. COS (E) .•••.•••• cosine' of E. ARCTAN (E) •••••• arctangent of E. LN (E). • • • • • • . • • natural log of E. EXP (E) • • . • • • • • • exponential of E. ENTlER (E) ." ••••• converts type REAL to type INTEGER with truncation. REAL (E) •••••.•. permits arithmetic on type BOOLEAN quantities. BOOLEAN (E) ••••• permits Boolean operations on arithmetic quantities • TIME (E) ••.••••• provides access to an internal clock . Relational . 351 Constants: Possible sizes 39 Integer: . . . . • • . 0 to 2 . Fixed point: .•.• none. -56 68 Floating point: ... 7. 8 x 10 to 4.3 x 10 Alphameric: .••."1 to 6 characters. Subscriptable: .•.•• yes. Sign provision: ••.. optional. • 352 Literals: . . . . . . . . . same as constants, except alphameric literals of up to 63 characters can be used in output FORMA T declarations and in Stream Procedures. . 353 Figuratives: . . . . . . . none . .354 Conditional variables:. Boolean conditions (truefalse) only. .36 I . ............. divide. DIV • • • • • • • • • • •• integer divide; result is truncated. *. "............. exponentiate. MOD ••••••••••• modulus. _ .••..•••••• assignment; value of right hand side is assigned to left hand side. & • • • • • • • • • • • • • concatenate. Arithmetic + •••••••••••••• add (can be unary). •••••••••.•••• subtract (can be unary). x •••••••••••••• "multiply. < ••••••••••••• is less than • ~ ••••••••.•••• is . . • • • • • . • • • • • is ~ .••••••••••.• is > ••••••••••••• is I- ••••••••••••• is less than or equal to. equal to. greater than or equal to. greater than. not equal to. Logical NOT •••.•..•••• negation • AND . • • • • • • • • • • logical product. OR •••••••.•••• logical sum. IMP. . • • • • • • • • • . implication. EQV ••••••••••• logical equivalence. Note: All logical operations are performed on the entire 48-bit word. .412 Operands aliowed Classes: ••••••••• integer or real for arithmetic operators (except DIV and MOD); integer or real for standard functions (results are always real); Boolean for logical operators. Mixed scaling: ••••. yes. Mixed classes: •••• yes; types integer and real can be mixed in arithmetic expressions, subject to certain restrictions. Mixed radices: •••• no. Literals: •••••••• yes • . 413 Statement structure: Parentheses a - b - c means: .. (a - b) - c. a + b x c means: .. a + (b x c) . albic means: .... (alb)/c . abC means: .....• (ab)c. Size limit: . . . . • . . 4,092 generated B 5500 syllables. Multi-results: ..••. yes; e. g., A_ B-- C X+Y. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 BURROUGHS B 5500 203:161. 414 .414 Rounding of results: .. automatic when variable on left side of__ operator is type INTEGER. • 415 Special cases x = -x: . . . . . . . . • . X---X. x=x+l: ..•..•.. X ... X+l, x=4.7y: . . . . . . . . X .... 4.7 xY. x = ,5 x 10 7 + y2: ... X -- 5 @ 7 + Y * 2. x = y integer part: .• X ... ENTlER (Y) • . 416 Typical examples: .•. X_(-B + SQRT (B x B -4 x A x C» I (2 x A). .42 Operations on Arrays: by own ALGOL coding. .43 Other Computation 'STREAM PROCEDURE declarations permit use of the B 5500 Character Mode for operations on "strings" of alphameric characters. Stream Procedures can be used to facilitate editing, packing and unpacking, and scanning operations. Their overall structure is similar to that of standard ALGOL procedures; but since all ALGOL statements cause the B 5500 to operate in the Word Mode, they cannot be used within a Stream Procedure. Stream statements, in turn, cause operation in the Character Mode and can be used only within ,Stream Procedure declarations. The basic function of a Stream Procedure is to operate upon a string of characters from a "source area" and to transfer the edited string to a "destination area. " The source index (SI) contains the address of the word, character, and bit currently being processed. The destination index (DI) contains the address of the location where the processed data will be stored. Stream Statement Types • Stream address statement: Sets, increments, or stores source or destination index value; e.g., SI .... LOC D sets source index to stack location of stream variable D. • Destination string statement: Transfers information to destination string from source string or a literal. From 1 to 63 words, characters, or the zone or numeric bit portions of characters can be transferred; octal-to-decimal or decimal-tc-octal conversions can be performed on numeric data in I-word units; or the source characters can be added to or subtracted from the corresponding destination characters. Examples: DS ..... 15 CHR transfers next 15 characters from source string to destination string. DS -- 6 OCT converts next 6 decimal digits in source string to an octal word in destination string. DS ... 7 LIT "HEADING" places the 7-character literal "HEADING" in destination string .. '. Stream GO TO statement: transfers control to a labelled statement within the stream block; e. g. , GO TO START. • Skip bit statement: skips the specified number of bits in the source or destination string; e. g. , SKIP 5 SB. 10/65 • Stream tally statement: Sets, increments, or stores contents of the counter register TALLY, whose value is modulo 64; e.g., TALLY TALLY + ALPHA • • Stream release statement: Causes one buffer of an input file to be filled with new data or the contents of one buffer of an output file to be sent to an output device; e.g., RELEASE (FILEA). • Conditional stream statement: Compares source string with destination string or a literal; tests value of a source bit; tests true-false toggle setting, or tests whether a source character is a letter or digit. If tested condition is false, the stream statement follOWing THEN is ignored; e. g., IF SC = "-" THEN GO TO NEG transfers control to NEG if the source character is a minus sign. • Stream nest statement: Controls the execution of a loop formed from stream statements; e. g. , 10 (IF SC = "E" THEN JUMP OUT; SI -- SI + 1; TALLY- TALLY + 1) increments both source index and TALLY by 1 ten consecutive times unless a source character "E" is found, in which case control is transferred to next statement after the right parenthesis. • 44 Data Movement and Format .441 .442 .443 .444 Data copy example: .. Levels possible: ...• Multiple results: •..• Missing operands: ..• Y-X. items only. yes; e.g., X- Y--Z. not possible. .445 Size of operands Exact match: .••.•• implied, except in inputoutput editing and Stream Procedures. Alignment rule Numbers: .•.•.•. right justified or normalized. Alpha: .•..•••.• right justified. Filler rule Numbers: ..•••.. zeros. Alpha: •...•..•. zeros. Truncating rule Numbers: ...••.. truncate at left. Alpha: • . • • . . • • . truncate at left. Variable size ' destination: .••.. no. .446 Editing possible Change class: ...•. yes. Change radix: . • • . . yes. Insert editing symbols Actual point: ••••• automatic. Suppress zeros: •.• automatic. Insert: •••.•••.• sign, point. Float: •.•..•• . . - sign only. .447 Special moves: .•••• in Stream Procedures: transfer 1 to 63 characters or words from source string to destination string; see Paragraph. 43. ' .448 Code translation: .... performed automatically as necessary. .449 Character manipulation: ••••. in Stream Procedures; see Paragraph .43. (Contd. ) A AUERBACH ~ / 203:161. 450 PROCESS ORIENTED LANGUAGE: ALGOL . 45 File Manipulation Open: •...••.•••.. automatic, by first reference to a file. Close: . • . • • . . • . . . automatic when exit is made from block in which the FILE declaration or CLOSE statement appears. For magnetic tape files the follOWing options are available: rewind for further program use; rewind and lock; rewind and release to system; or do not rewind. Advance to next record: READ, WRITE, SPACE, or RELEASE. Step back a record: .• SPACE or READ REVERSE. Set restart point: •.•• none. Restart: ..•••••••. none. Start new reel: .•... automatic, by MCP. Start new block: ••.•. automatic. Search on key: . . • . . . none. Rewind: . . . • . . • . • . see "Close," above. Unload: .•••.••... none. .523 .524 • 525 Note: READ REVERSE specifies that a magnetic tape file shall be read backward. • 46 Operating Communication .461 Log of progress: •••• typed messages, controlled by MCP. .462 Messages to operator:_ typed messages. .463 Offer options: . • . . . . typed messages . • 464 Accept option: ..•••• keyboard entries. .47 Object Program Errors Error Discovery hardware interrupt In-out: hardware interrupt Invalid data: hardware check • 51 • 511 • 512 .513 .514 • 515 .52 .521 • 522 • 528 permit programmerspecified action; if none, type message and • 53 Subroutines terminate program. .• 531 Designationtype message. Single statement: ••• same as set. Set of statements PROCEDURE SEQUENCE CONTROL First: ••••••••• PROCEDURE P (where P is name of subroutine). Jumps Last: •••••••••• END • .532 Possible subroutines: • block, compound statement, Destinations allowed: • any named statement within or basic statement. current block, or begin• 533 Use in-line in program: no. ning of any named block. • 534 MechanismUnconditional jump: .• GO TO N. Cue with parameters: P (X, Y + Z, 25) • Switch: •..••...•.• SWITCH S ..... N, P, Q; GO Number of TO S [I]. parameters: ••••• 128. Setting a switch: •••• I -- 2. Cue without Switch on data: .•••. as above. parameter: •••••• P • Formal return: •••• implied after last procedure before END Conditional Procedures delimiter. DesignatorsAlternative return:. • GO TO implied formal Condition:. • • • • • • • IF. return or to explicit Procedure: ••••••• THEN. statement outside of Simple conditions subroutine. Expression vs. .535 Namesexpression: •••••• yes. Parameter call by Expression vs • value: ••••••••• yes, if listed in VALUE variable: ••••••• yes. declaration. Overflow: .5 Special Actions .526 • 527 Expression vs • literal: ••••••••• yes. Expression vs. figurative: •••••• no. Expression vs. condition: ••••••• no. Variable vs. variable: ••••••• yes. Variable vs. literal:. yes. Variable vs. figurative: •••••••••• no. Variable vs. condition: •••••••.•• no. Conditional value: •• no. Conditional relations Equal: •••••••.•• = Greater than: • • • • • > Less than: • • • • • • • < Greater than or equal: ••••••••• > Less than or equal: • <: Variable conditions: •• true/false implied. Compound conditions IF x AND y: •••••• IF X AND Y THEN ••• IF x OR y: ••••••• IF X OR Y THEN ••• IF x DO a AND y DO b: •••••••••••• IF X THEN A - A + 1; IF Y THEN B - B + 1. IF x DO a OR y DO b: .••••••••••• IF X THEN A-A + 1 ELSE IF Y THEN B ..... B + 1 • Alternative designator: ELSE (optional). Condition on alternative:. • • • • • • • • • unrestricted • Typical examples: ••• IF A > B THEN A ..... A + 1 ELSE IF C = D THEN GO TO N ELSE GO TO ERROR. IF X AND Y THEN FOR 1-1 STEP 1 UNTIL 20 DOA [1] -- B [I] + C. } © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 BURROUGHS B 5500 203: 161. 535 .535 Names (Contd.). Parameter call by name: ..•..•.•. yes, if not listed in VALUE declaration. Non-local names: ••. yes, implied by no local definition. Local names: ••..• yes. Preserved local variables: . • . . . . . only those declared OWN. • 536 Nesting limit: . . . . . . limited only by stack size, which is variable. • 537 Automatic recursion allowed: . . . • . . . . . yes. · 54 Function Definition by Procedure · 541 DesignationSingle statement: .•. same as set. Set of statements First: •••.•..•. Type PROCEDURE F (where F is function name and Type is REAL, INTEGER,BOOLEAN, or ALPHA). Last: •.•••••••• END. • 542 Level of procedure: •. block, compound statement, or basic statement. .543 MechanismCue: ••..••.•••• function name in expression, followed by parameter list; e. g., X-Y + F (A, B + C). Formal return: • • • . implied after last procedure before END delimiter • . 544 NamesParameter call by value: • . • • . . . • • yes. Parameter call by name: .•.•••.•. yes. Non-local names: ... yes. Local names: ...•. yes. Preserved local variables: . . • . . . . only those declared OWN. EXTENSION OF THE LANGUAGE: •••••• none, except by user-coded A LGOL or Stream Procedures. .7 LmRARY FACILITIES .71 Identity: ••••••.••. B 5500 Program Library. • 72 Kinds of Libraries .73 Storage Form: •••••. magnetic tape (punched cards in non-tape systems). .74 Varieties of Contents:. compiled programs in machine code. procedures (subroutines) in source language . .75 Mechanism Operand Definition by Procedure .551 Designation: .••.••. same as . 541. .552 Level of procedure: •. same as . 542 • . 553 Mechanism: ••....• same as .543, but no parameters are used. • 554 NamesNon-local names: ••. yes. Local names: •••.• yes. Preserved local variables: .•..•.• only those declared OWN. • 56 ·6 .721 Fixed master: •••••• no. • 722 Expandable master: • . yes. .723 Private: .••••••••• yes. Note: Variable having same name as function must appear on left side of an assignment statement within the function procedure body. . 55 .562 Control by count: •••• no. • 563 Control by step Example: •••••••• FOR V-- 2 STEP 1 UNTIL NDO ••.. Parameter: .•••••• arithmetic expression. Step: •.•••..•••. arithmetic expression. Criteria: .• • • . • . • until greater than end value when step is positive, less when negative. Multiple parameters: yes • · 564 Control by condition Example: •••.•.•. FOR V- 3 x V WIDLE A> B DO .•. Combined with step:. optional; e.g., FOR V+- 1 STEP 1 WHILE A > 0 DO ••• • 565 Control by list: ••... FOR V-1, 5, 6 STEP 2 UNTIL 20, 25 DO ••. .566 Nesting limit: •••..• none. .567 Jump out allowed: ••• yes. · 568 Control variable exit status: ••••••• available while in loop and after jump out via GO TO; not available after FOR list has been satisfied. Loop Control .751 Insertion of new item:. by MCP, using control cards . .752 Language of new item: ALGOL, COBOL, or machine code. .753 Method of call: ••••• procedures called by use of their names in source program. .76 • 561 Designation of loop: •• simple statement immediately following the FOR clause, or compound statement delimited by BEGIN and END. .761 Open routines exist: •. yes. .762 Closed routines exist:. yes. .763 Open-closed is variable: •••••••• no. A 10/65 AUERBACH '.:::. Type of Routine '" 203:161. 800 PROCESS ORIENTED LANGUAGE: ALGOL .85 Program Documentation Control: ••....... compile with or without source program listing. .9 TARGET COMPUTER ALLOCATION CONTROL • 91 Choice of Storage Level: . . . . . . . . . . none. .92 Address Allocation: .. none. .93 · 821 Process usage statements: .••.... none. · 822 Data usage statements: none. Arrangement of Items in Words in Unpacked Form: ..•.. standard for numeric. .94 Assignment of InputOutput Devices: .... none; performed by MCP. • 83 Translator Environment: " ... none. .95 • 84 Target Computer Environment: ....• none. Input-Output Areas: •• size (in words) and number of buffer areas for each file are specified in FILE declaration or in the input tape label. .8 TRANS LA TOR CONTROL · 81 Transfer to Another Language: •.•.•.•. Stream Procedures, described in Paragraph .43, permit use of the B 5500 Character Mode for operations on "strings" of alphameric characters. • 82 Optimizing Information Statements I \, © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 203:162.100 A BURROUGHS B 5500 PROCESS ORIENTED LANGUAGE COBOL AUERBACH ro SUNDARIa EDP REPORTS PROCESS ORIENTED LANGUAGE: COBOL .1 GENERAL .11 Identity: . . . . . . . . . . COBOL-61 Extended. .12 Origin: . . . . . . . . . . . Burroughs Corporation. .'13 Reference: . . . . . . . . COBOL Reference Manual for the Burroughs B 5500. . 14 Description COBOL-61 Extended for the Burroughs B 5500 is a comprehensive version of the Department of Defense's COBOL-61 Extended language. All of Required COBOL-61 has been implemented, as well as most of the elective features of COBOL-61. Two of the three principal extensions of COBOL-61 Extended - the SORT verb and the Mass Storage features - have been implemented in varying degrees of completeness, and Burroughs has also included several other useful extensions to permit the direct use of data communications terminal units. The Report Writer facility of COBOL-61 Extended has not been implemented. The extensions of B 5500 COBOL-61 with respect to Required COBOL-61 are listed in Paragraph .142, and the COBOL-61 elective features implemented are listed in Paragraph .143. The Mass Storage language exte·nsions of B 5500 COBOL are designed to permit efficient use of the Burroughs Disk File system while programming in the COBOL language. The constructs provided in B 5500 COBOL represent a subset of the Mass Storage language accepted by the CODASYL Maintenance Committee. The principal area of Mass Storage language facilities not implemented in B 5500 COBOL is that of asynchronous or "out-ofline" processing. However, provisions are included in the language to permit overlapping of record accessing and normal processing. Data record accessing can be specified as RANDOM or SEQUENTIAL in the special Mass Storage (MD) File Section.of the Data Division. The sequential access mode can utilize multiple buffer areas as specified in the ASSIGN nn ALTERNATE AREAS clause of the Environment Division's SELECT statement. Within the Mass Storage File Description section, it is possible to specify the size of the data blocks and records, the type of file label records, the file's SAVE-FACTOR, the symbolic or actual record address key, the size of the file, and the limits of the portion of the file that can be accessed during the execution of this program. Based on this information, the COBOL compiler and the Disk File Master Control Program make provisions to read and record data records in one of two modes, called Technique-A and TechniqueP. Technique-A calls for a fixed number of fixedlength records within a data block. If a block does 10/65 . A AUERBACH ro not utilize all of the character positions of the 240character Disk File segment, the unused character positions are wasted. Technique-A can support either the Random or Sequential access methods. TechniqUe-P - not implemented to date - packs records consecutively onto the Disk File, without regard to whether the beginning or end of a record coincides with the beginning or end of a Disk File segment. Variable-length records can be used with this data-organization technique, but can be accessed only in the sequential mQde. Fixed-length records can also be used with Technique-P, and can be accessed in either the sequential or random mode. The Mass Storage procedural statements provide special versions of READ, WRITE, OPEN, and CLOSE to provide input-output routines specifically designed for the Burroughs Disk File. The WITH LOCK option of the OPEN and CLOSE statements permits the program to have exclusive use of named files unless overruled by operator intervention. The CLOSE statement can also specify that specific files be PURGED from the system after their current use is terminated. The INVALID KEY clause of the READ and WRITE statements permits control to be transferred if an actual key address is recognized as being beyond the preset limits of the program. The verb SEEK enables a record search to begin without delaying the direct-line processing. Two special versions of the MOVE statement and the USE FOR KEY CONVERSION statement provide flexible facilities to control programmer-supplied key conversion algorithms. In May, 1965, Burroughs announced its implementation of several new COBOL constructs to permit the B 5500's data communications terminal units to be controlled directly by COBOL programmers. The ACCEPT DATA statement makes input messages entered thru a data communications network available to the program. If no message is in the specified terminal unit's input buffer, the Master Control Program suspends processing until a message is available. The WRITE •.. ON •.• construct provides the facility to output computer responses to specified terminal units. Normal COBOL constructs, such as OPEN OUTPUT and CLOSE, are also used with data communications devices. Several additional language facilities have been added that will increase programming flexibility in data communications environments. The MOVE END statement moves the end-of-message character (~) to its desired location when formu1ating computer responses. The WHEN and UNTIL statements suspend processing of the current program segment, either for a specified number of seconds (WHEN), or until a specified condition is satisfied (UNTIL). The ASSIGN TO MEMORY (Contd.) 203:162.140 PROCESS ORIENTED LANGUAGE: COBOL . 14 Description (Contd.) (4) .••••.••.. equal to. declaration with the Data Division reserves, for the named data array, a permanent residence in the system's storage in preparation for later transmission to another computer or to a remote data communications device. All data communications output files are also identified in the Environment Division by means of a new ASSIGN TO DATA construct. COBOL for the B 5500 also includes a complete implementation of the SORT extension to COBOL-6!. Both the Basic and Extended SORT facilities are provided, enabling any number of SORT statements to appear within the Procedure Division of a program. The amount of core storage and the number of magnetic tape or disc units to be used for the sorting operation can be specified in the Environment Division. The file to be sorted is specified in a separate File Description (SD) section within the Data Division, where the approximate file size and record characteristics are entered. The SORT verb itself contains several options that permit specifying either ascending or descending sorting sequence, and whether a simple sort or a programmer-monitored sort should take place. The INPUT PROCEDURE option enables the programmer to edit records before sorting and to present only selected records to the sort operation by means of the RELEASE clause. Similarly, the OUTPUT PROCEDURE option of the SORT verb allows the programmer to access each sorted record through use of the RETURN clause. > •••••••••• greater than. < •••.....•• less than. . 143 Extensions of B 5500 COBOL-61 With Respect to Required COBOL-61 (1) (2) (3) The verbs SORT, MERGE, RELEASE, and RETURN. Various Mass Storage statements, including the SEEK verb, control sequential or random processing on Disk Files. Various data communications device constructs, such as ACCEPT DATA, WRITE ON, and MOVE END. © . . • . . . • . . . equal to or greater than. . • . . . . • . . • equal to or less than. i' .......... unequal to. The source language debugging aids MONITOR and DUMP. (6) The CORRESPONDING option of the ADD and SUBTRACT verbs. (7) The intrinsic functions: ABS, ARCTAN, COS, EXP, LN, SIGN, SIN, and SQRT. (8) The ability to refer to a data item either by its name or by an arbitrary synonym. (9) The use of arithmetic expressions as subscripts. (10) The use of a virtually unlimited number of subscripts. (11) The ability to use abbreviations for certain terms in the Data Division, such as CMP for Computational, PT for Point Location, and PC for PICTURE. (12) The ZIP function for communicating with other COBOL or ALGOL programs . (13) The RERUN statement for program restarts. (14) Formulae are permitted in the GO TO .•• DEPENDING ON statement, and in the FROM and BY clauses of the VARYING option of the PERFORM verb. (15) I/O Channel specification is permitted in the WRITE statement . (16) Unlimited AFTER clauses within the PERFORM statement. (17) The WHEN and UNTIL statements to suspend processing. (18) The sequence of procedures associated with a PERFORM statement may overlap or intersect the sequence associated with another PERFORM statement, even if either sequence includes the PERFORM statement associated with the other sequence. .142 Deficiencies of B 5500 COBOL-61 With Respect to Required COBOL-61 No deficiencies are known to exist. ~ ~ (5) • 141 Availability Language: . • . . . . . . . March 1963 and May 1965. Compiler: • . . . . . . . . April 1963. The following relational symbols: 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 203: 162. 144 BURROUGHS B 5500 .144 COBOL-61 Electives Implemented in B 5500 COBOL (see 4: 161. 3) Key No. 1 2 3 6 7 Elective Comments Characters and Words Formula characters Relationship characters Semicolon Figurative constants PREPARED FOR Computer-Name 12 File Description Clauses Block-size FILE CONTAINS SEQUENCED-ON HASHED 13 16 17 18 19 Record Description Clauses/Options Table-length RANGE IS RENAMES SIGN IS Item-length 8 9 11 20 Verbs COMPUTE INCLUDE USE 27 28 29 30 32 Verb Options LOCK MOVE CORRESPONDING OPEN REVERSED ADVANCING paper Formulas 33 34 35 36 37 38 Operand-size Relationships Tests Conditionals Compound conditions Complex conditionals 39 ON SIZE ERROR 46 /, **. =, (). always ignored. HIGH-VALUE(S); LOW-VALUE(S). labels data descriptions applicable to several computers. allows a range to be specified. indicates approximate file size.· gives a list of keys to be sequence-checked. hash total checking can be specified. allows variable-length tables and arrays. gives value range of item or character. permits overlapping of variable items. allows sign of data item to be named. allows variable-length items to be specified in SIZE clause (see also 16). allows a conditional-value to be a range. Conditional-range 22 25 26 41 +, -, *, =, <, >. algebraic formulae. calls library routines. amplifies I/O error and labeling routines. locks rewound tapes and files on disc storage. moves and edits matching records. allows reading tapes backwards. gives specific paper advance. algebraic formulae, as used in COMPUTE verb. up to 18 digits. IS UNEQUAL TO. EQUALS, and EXCEEDS. IF ~ IS NOT ZERO. imp ied objects with implied subjects. ANDs or ORs. additional conditions following OTHERWISE and ELSE. provides extension of error routines. 1 Environment Division OBJECT-COMPUTER allows selective use of previous descriptions; MEMORY SIZE clause is used only by the SORT generator; size is determined automatically by MCP. allows programmer control; SAME AREA clause not implemented. I/O Control 47 Identification Division DATE gives compilation date. 48 Special Features LIBRARY allows calls of library routines. ./ / (Contd.) 10/65 A AUERBACH ~ 203: 162. 145 PROCESS ORIENTED LANGUAGE: COBOL .145 COBOL-61 Electives Not Implemented (see 4: 161. 3) Key No. Elective Comments Characters and Words Long literals Figurative constants more than 120 characters. UPPER-BOUND(S); LOWER-BOUND(S). 10 File DescriEtion Clauses Label formats allows new or library formats. 14 Record DescriEtion Clauses/Options Item-length 4 5 15 21 Bit usage Label-handling 23 24 Verbs DEFINE ENTER 31 Verb Options STOP 40 42 Environment Division SOURCE-COMPUTER SPECIAL NAMES constructs new verbs and statements. changes to another language. 43 44 File Description PRIORITY is 45 I/O Control 49 allows length specification in PICTURE clause (see also 19). allows items to be specified in binary. provides free handling of labels. Special Features SEGMENTATION non-alphabetic display provision; B 5500 always has an alphabetic display device on-line. allows selective use of previous description. specifies switches for ACCEPT, WRITE, and DISPLAY verbs; B 5500 has no sense switches. can be taken from library. allows priorities to be given for multiprogramming; B 5500 priorities are provided by control cards and altered as required by the MCP. can be taken from library. allows assignment of segment priorities by programmer; B 5500 segmentation is handled by MCP. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 -.&.. 203: 163. 100 STmAID ~~EDP BURROUGHS B 5500 PROCESS ORIENTED LANGUAGE FORTRAN IV AUERBAC~ '" - REPORTS PROCESS ORIENTED LANGUAGE: FORTRAN IV .1 GENERAL .11 Identity: •••••••••• B 5500 FORTRAN IV. .12 Origin: •••••••••.• Burroughs Corporation. • 13 Reference: ••.••••• Preliminary Edition of FORTRAN IV for Burroughs B 5500. .14 Description: Burroughs has not implemented any FORTRAN language facilities to permit direct use of its Disk File storage units, although the Disk File Master Control Program (MCP) can make the Disk File facilities available in an indirect manner. Similarly, there has been no implementation of FORTRAN language constructs to make use of the several varieties of B 5500 data communications devices. .141 Availability FORTRAN IV for the Burroughs B 5500 Information Processing System is a virtually complete implementation of the FORTRAN programming language as proposed by the X.3.4.3 FORTRAN Group of the American Standards Association, and as published in Communications of the ACM, October, 1964. (This proposed standard version of the FORTRAN language corresponds to what is commonly known as FORTRAN IV.) In comparison to this standard, B 5500 FORTRAN lacks the provisions to handle double-precision and complex variable items. All other FORTRAN IV language facilities have been included. FORTRAN IV for the B 5500 is designed to duplicate, wherever poss:ible, the facilities of the IBM 7090/7094 FORTRAN IV language to facilitate conversions of scientific and engineering installations to the B 5500. Burroughs has developed a translator program called FORGOL 4 (see Section 203:183.100) that converts FORTRAN IV programs into Extended ALGOL; Burroughs' time-proved A LGOL compiler then completes the translation/ compilation operation. Language specifications: . • • . . . . . . . • December, 1964. Translator (FORGOL 4): •••••••••••.• October, 1964. .142 Restrictions of B 5500 FORTRAN IV Relative to IBM 7090/7094 FORTRAN IV (1) (2) All intrinsic functions concerned with doubleprecision or complex variables have been excluded. .143 Extension of B 5500 FORTRAN IV Relative to IBM 7090/7094 FORTRAN IV 39-1 (1) Integer constants fan range to 2 as compared to 235- in 7090/7094 FORTRAN IV; real (floating-point) constants can range from 1O-l!6 to 10+69 as compared to the 10- 38 to 10+38 range of 7090/7094 FORTRAN IV. (2) A general description of the IBM 7090/7094 FORTRAN IV language is presented in Section 408:162. The restrictions and extensions of B 5500 FORTRAN IV relative to the IBM version are listed in Paragraphs .142 and • 143, respectively, of this report section. The B 5500's relational symbols can be used as desired in place of the standard FORTRAN relational operators, as follows: > for .GT. > for .GE.203:181.100 ~.. SUNDARD BURROUGHS B 5500 PROGRAM TRANSLATOR EXTENDED ALGOL EDP REPDRTS AUERBACH PROGRAM TRANSLATOR: EXTENDED ALGOL .1 GENERAL . 11 Identity: ..•.•.... . 12 • Extended ALGOL Compiler. Description The Extended ALGOL Compiler is a s·ingle-pass routine that translates source programs written in the Extended ALGOL language (see Section 203: 161) into B 5500 object programs in segmented, relocatable machine-language form. The Compiler occupies about 10,000 locations on Storage Drum 1 or 10 tracks of the Disk File, and is called into core storage by the Master Control Program when a header card indicates that an ALGOL source program is to be compiled and added to the program library, or checked for syntactic errors without compilation. The ALGOL compiler delivers translation speeds ranging between 600 and 800 source program cards (or up to 2500 magnetic tape card images) per minute. Object program efficiencies of 90 to 95 percent relative to the best hand coding have been achieved, according to Burroughs. The combination of fast translation and high object program efficiency was the primary goal in the design of the B 5500 hardware and the Master Control Program. Among the factors that contribute to the efficiency of the B 5500 ALGOL compiler are the following: • ( \ '. '- • Recursive use of procedures is implemented at the hardware level. (The ALGOL Compiler .itself consists of about 90 procedures, each of which can use any other procedure, including itself.) • Fixed-point and floating-point numbers are represented in the same form, so conversions and checks for mixed arithmetic are unnecessary. • Any Input/Output Channel can reference any peripheral device. • The B 5500 Character Mode facilitates editing, scanning, and radix conversions, while the Word Mode permits efficient arithmetic and logical operations. • Automatic temporary storage for intermediate results and subroutine parameters is provided by the stack. • Overlays of program segments and data arrays are handled automatically by the Processor and the MCP. © Storage protection for data arrays and program segments is provided by the hardware. The same registers are used for indexing and arithmetic operations . • Floating-point numbers can be automatically converted to integers during indexing and storing operations. • Literals between and 0 and +1,023 can be incorporated directly into the program stream. • Comprehensive hardware facilities are provided for detection and servicing of interrupt conditions. Segmentation of the object program is performed by the compiler. Each ALGOL block becomes a separate program segment that is referenced by a Descriptor in the Program Reference Table. The Descriptor specifies the current drum or disk and core addresses of the segment and indicates whether or not it is currently loaded in core storage. No segment may exceed 1,023 words in length, so very long source language blocks may have to be divided into sub-blocks by the programmer. The use of short blocks is recommended for efficiency in storage allocation and in multiprogramming situations. The main restriction on overall object program size is the Program Reference Table, which is limited to 1,023 entries. The ALGOL Compiler itself requires about 650 PRT entries. The compiler has access to the procedures, or subroutines, which are stored on the Program Library Tape in ALGOL source-language form. When a procedure is required, it is called from the library and translated along with the source program. This system facilitates multiprogramming and makes possible a listing of the complete source program, including all procedures; it also means that a single frequently-used procedure may require multiple storage areas (one area for each program being run at the same time which uses the procedure). Input-output editing and format control operations are carried out by standard routines. Intrinsic functions are called in at object time, except for ABS, SIGN, and ENTlER, which are inserted inline at compile time. No instructions are generated for REAL and BOOLEAN; they are temporary declarations to prevent error messages at compile time. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 BURROUGHS B 5500 203:181. 120 · 12 .32 Diagnostics can be incorporated into the object program by the source-language declarations MONITOR and DUMP, which are described in Paragraphs. 451 and .452. The printouts produced by these declarations facilitate sourcelanguage debugging. This facility, together with the high translation speeds of the B 5500, makes it practical to do all debugging in the ALGOL language and retranslate the whole program at each stage of the debugging process. .321 Standard inclusions: none .322 Compatible with: Master Control Program · 13 Originator: ..•••. Burroughs Corporation. • 14, Maintainer: •.•.•• Burroughs· Corporation. · 15 Availability: April, 1963. .2 INPUT .21 Language • 211 Name: . . . . . . . . . .212 Exemptions : .22 Extended ALGOL for the Burroughs B 5500, Section 203:161. none. Form .221 Input media: punched cards or magnetic tape. .33 ordering: header card first, then source deck in logical sequence; all declarations for a block must appear at the head of the block, and procedures and switches must be declared before they can be used (unless a FORWARD reference is used). Documentation Subject Provision Source program: Object program: .•• Storage map: ••••. Restart point list: •• Language errors: •. optional listing. optional listing. none. none. listing. .4 TRANSLA TING PROCEDURE .41 Phases and Passes: .42 Optional Modes .421 • 422 • 423 .424 .425 Translate: Translate and run: • Check only: •.•..• Patching: Translate and add to library: .43 ..... . ....... . .... translate: •..... no. .433 Short translate on restricted program: ........ .44 Bulk Translating: . • .45 Program Diagnostics .451 Tracers: •.•..•• limited by target computer storage, • 232 Maximum size 4,092 generated B 5500 syllables per ALGOL block. • 452 Snapshots: ...••. • 233 Maximum number of data items: ••.•• .3 OUTPUT .31 Object Program .311 Language name: ..• • 312 Language style: ••• .313 Output media: ••.. 10/65 yes. no. .231 Maximum number source statements: .••...•• yes • yes. yes. no. Special Features Size Limitations of source statements: .•..••.. one-pass translator. .431 Alter to check only: .432 Fast unoptimized • 222 Obligatory .23 Conventions Description (Contd.) practically unlimited. B 5500 machine code. fully relocatable . magnetic tape or disc storage. A AUERBACH .~ - no. yes. MONITOR declarations cause the identifier and current value of each listed variable to be written on the designated file each time it is used as a "left-hand part" in an assignment statement. Listed switch identifiers, label identifiers, and procedure identifiers used as function designators are also written each time they are encountered in the object program. DUMP declarations cause specified data to be written on a designated file whenever a labelled statement has been executed a specified number of times. The output may include: variable identifiers with their current values, array identifiers with current values· of all their elements, and statement labels with tallies of the number of times they have been executed. (Contd.) 203: 181. 453 PROGRAM TRANSLATOR: EXTENDED ALGOL .453 Dumps: .46 ........ not incorporated in source programs. .52 Translation Time .521 Normal translating:. approx. 600 to 800 sourceprogram cards per minute (up to 2,500 sourceprogram card images per minute when I/o is via magnetic tape). • 522 Checking only: ...• same as above times. Translator Libra!X . 461 Identity: . . . . . . . . • 462 User restriction: .. .463 Form - Storage medium: . Organization: B 5500 Program Library. general. magnetic tape or disc file. multi-file tape and disc libraries. .464 Contents - Routines: .••.•• . .... Functions: Data descriptions: Compiled programs: .... • 53 Optimizing Data: .• .54 Object Program Periormance: .•. yes; closed procedures in source language. yes . no. yes, in relocatablemachine code. .465 Librarianship - Insertion: • • • • . . Amendment: •.•. Call procedure: .• by MCP, using control cards. by MCP, using control cards. use of name in source program. .5 TRANSLATOR PERFORMANCE .51 Object Program Space no explicit data. manufacturer recommends coding in long statements (to reduce number of unnecessary storage accesses) and short blocks (to facilitate segmentation). allocation of target computer. storage and inputoutput devices is performed by the MCP. according to Burroughs, typical object program efficiency is 90 to 95% relative to best hand coding for both time and space. .511 Fixed overhead - Name Master Control Program: •••.. Read-Write routine: .•... File Control routine: .. ... Space 1,600 core locations. 15,000 drum locations. 1,000 Disk File segments. .6 COMPUTER CONFIGURATIONS .61 Translating Computer .611 Minimum configur- ation: •...••••. included in MCP on drum or disc storage. included in MCP on drum or disc storage. .612 Larger configuration advantages: •.•.• .512 Space required for each input-output file: .••...•.•. number and size of buffer areas for each file are specified in FILE declarations. .513 Approximate expan- sion of procedures: ••.••.••. Statement FORI ~STEP 1 UNTIL 100 DO: J ~J +2: .•.. C [I] ~'I ">-1 2 ~iI V ~'Y ~q/ Time in 100 Milliseconds per Input Record 7 R 1.0 R-0.1,O.01 "', 4 " ./ ~, c 2 ~/ 10 ~ 7 4 ~- ~ 2 1 2 0.1 4 7 2 1.0 4 2 7 10.0 4 7 100.0 C, Number of Computations per Input Record LEGEND -------------------- Elapsed time Central Processor time -CP--~ © 1965 AUERBACH Corporation and AUERBACH info, inc. 10/65 203:201. 415 BURROUGHS B 5500 .415 Graph: • . . • . . . . . • • see graph below, for Configuration VIm only; magnetic tape input and output. CONFIGURATION VIIB 10,000 7 4 2 1,000 7 4 Ii~ 2 ~~,., '\., Time in 100 Milliseconds per Input Record 7 ~. ~. -,/'L ~/ ~~ 2 R 10 4 " / 4 7 ~ '\., V = 1.0 V 0.1, 0.01 f--R cP" 1---- ~ ... 2 1 0.1 2 4 7 2 4 1.0 7 10.0 2 C, Number of Computations per Input Record LEGEND - - - - - - - - - Elapsed time - C P - - - Central Processor time 10/65 fA.. AUERBACH ~ 4 7 100.0 -1. - 203:211. 101 Slm ... BURROUGHS B,5500 PHYSICAL CHARACTERISTICS ~~EDP \. AUERBAC~ REPDRTS ~ PHYSICAL CHARACTERISTICS Unit Depth, inches Height, inches Weight, pounds KVA BTU per hr. Power, B 5281 Processor B 5282 I/o Subsystem B 5220 Central Control B 5290 Display and Distribution B 5370 Power Supply 45 45 45 32 32 32 74 74 74 1,000 1,000 1,000 1.8 1.5 2.0 6,800 5,400 7,400 45 45 32 32 74 74 1,000 1,000 1.1 3.8 4,000 13,000 B 5310 Console 72 24 29 250 2.4 900 B 460/461 Memory Module 45 32 74 1,000 5.4 18,500 B 430 Drum Subsystem 45 32 74 1,300 1.8 5,000 45 32 74 1,000 1.5 5,000 45 46 53 450 1.1 4,100 22 46 53 3,800 1.4 3,800 B 122 Card Reader B 123/124/129 Card Readers 29 17 41 102 0.20 48 29 50 920 1.3 3,000 B 303 Card Punch B 304 Card Punch 44 73 28 27 53 47 655 1,283 1.4 2.2 4,000 5,500 Line Printers (all models) 74 29 55 1,738 Magnetic Tape Units (all models) 29 28 74 30 24 30 B 450 Basic Disk File/ Data Communications Control Cabinet B 471 Disk File Electronics Unit B 475 Disk File Storage Module B 141 Paper Tape Reader B 341 Paper Tape Punch B 481 Teletype Terminal B 483 Typewriter Terminal B 493 Typewriter Inquiry Station B 484 Dial TWX Terminal B 487 Data Transmission Terminal Unit 700 2.3 (idle) 3.5 (printing) 4,480 900 2.0 to 3.3 7,200 60 437 0.91 3,100 24 60 426 0.59 1,500 24 38 42 500 0.23 800 24 38 42 500 0.23 800 18 24 20 38 40 42 60 500 0.26 0.23 800 800 ? ? ? ? ? ? General Requirements i I \ Width, inches '- Temperature: . . . • • • . •• Relative humidity: .• . • •. Power: •••..••••.•.. between 60° and 100°F. between 10% and 90%. 120-volt, I-phase, 60-cycle, 3-wire. © 1965 AUERBACH Corporotion ond AUERBACH Info, 'Inc. 10/65 -.£ 203:221.101 SlAmRD BURROUGHS B 5500 PRICE DATA /AEDP I \,-- - AUERBACS'. REPORTS ~ PRICE DATA IDENTITY OF UNIT CLASS No. PROCESSING AND CONTROL UNITS B 5280 $ $ Central. Processor (an optional. second Processor) 4,500 120.00 186,750 B 5283 I/o Channel (maximum of 4) 1,250 65.00 51,875 B 460 Memory Module (6 IJsec core, 4,096 words) Memory Module (4 IJsec core, 4,096 words) Magnetic Storage Drum (32,768 words) Disk File Control Basic Disk File/Data Communications Cabinet Disk File Expanded Control Basic Disk File/Data Transmission Terminal Unit Cabinet Disk File Electronics Unit Disk File Storage Module (9.6 million char) 1,250 55.00 51,875 1,450 60.00 60,175 1,700 590 65.00 65.00 70,550 26,550 255 200 40.00 25.00 11,475 9,000 255 710 40.00 80.00 11,475 31,950 990 115.00 44,550 220 320 400 600 40.00 70.00 75.00 115.00 9,900 18,000 18,000 27,000 450 650 65.00 115.00 20,250 29,250 400 180 190 170 70.00 10.00 40.00 10.00 18,000 8,100 8,550 7,650 810 1,200 1,275 1,325 1,400 100 170.00 175.00 185.00 195.00 205.00 20.00 54,000 54,000 57,375 59,600 63,000 4,000 B 461 B 451 B 452 :8471 B 475 INPUTOUTPUT Readers, Punches, Printers B B B B 122 123 124 129 B 303 B 304 B 141 920 B 341 930 B B B B B * $ Monthly Maintenance ** Purchase 307,100 B 5470 B 450 ** Central. Processor System, including: B 5220 Central. Control B 5281 Processor B 5282 I/O Subsystem (without I/O Channels) B 5290 Display and Distribution B 5310 Console B 5370 Power Supply Monthly Rental 265.. 00 B 430 ( OneTime Charge* 7,400 B 5281 MAIN AND AUXILIARY STORAGE Name PRICES 320 321 325 328 329 871 Card Card Card Card Reader Reader Reader Reader (200 cpm) (475 cpm) (800 cpm) (1, 400 cpm) Card Punch (100 cpm) Card Punch (300 cpm) Paper Tape Reader (500-1,000 char/sec) Input Code Translator Paper Tape Punch Output Code Translator Line Printer (475lpm; 120 pos.) Line Printer (700 lpm; 120 pos.) Line Printer (700 lpm; 132 pos.) Line Printer (1,040 lpm;120 pos.) Line Printer (1,040 lpm; 132 pos.) 132 Print Position Capability, per I/o Channel $105.00 One-time charge is applicable when certain features are added to an existing installation. Maintenance charges .are slightly higher in rural. areas. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 10/65 203:221.102 BURROUGHS B 5500 PRICES IDENTITY OF UNIT OneTime Charge* CLASS No. INPUTOUTPUT (Continued) Name .Monthly Rental $ Monthly Maintenance** Purchase $ $ Magnetic TaEe Units B 422 B 423 B 424 B 425 872 Magnetic Tape at 120 ips) Magnetic Tape 120 ips) Magnetic Tape 83 ips) Magnetic Tape KC at 90 ips) Unit (24/66 KC 800 155.00 36,000 495 145.00 31,500 850 165.00 38,250 850 165.00 38,250 100 20.00 4,500 460 295 55.00 45.00 20,700 13,275 460 480 660 55 700 495 55.00 55.00 75.00 10.00 80.00 95.00 20,700 21,600 29,700 2,475 31,500 22,275 100 40 60 45 35 ·170 85 20.00 5.00 10.00 10.00 5.00 30.00 15.00 4,500 1,800 2,700 2,025 1,575 7,650 3,825 Unit (24 KC at Unit (66 KC at Unit (18/50/72 Extended Magnetic Tape Capability, per I/o Channel (provides three-transfer-rate capability, beginning of tape, .end of tape, and blank tape sensing) $500.00 Data Communications Devices B 5480 B 249 B 481 B B B B 483 493 484 487 873 980 981 982 983 984 985 Data Communications Control Data Transmission Control Unit Teletype Terminal Unit: 120-Character Buffer 240-Character Buffer Typewriter Terminal Unit Typewriter Inquiry Station Dial 'IWX Terminal Unit Data Transmission Terminal Unit B 487 Capability, per I/o Channel Dial 'IWX/Typewriter Adapter Teletype Adapter Dataspeed Type 2 Adapter 801A Auxiliary Data Set Adapter UNIVAC 1004 Adapter mM 1050 Adapter $50.00 $50.00 $50.00 $50.00 $50.00 $50.00 $50.00 * One-time charge is applicable when certain features are added to an existing installation. ** Maintenance charges are slightly higher in rural areas. 10/65 A AUERBAC~ BURROUGHS 500 SYSTEMS ! ~ Burroughs Corporation AUERBACH INFO, INC. PRINTED IN U. S. A. ./ BURROUGHS 500 SYSTEMS L·~ \' ~ Burroughs Corporation AUERBACH INFO, INC. PRINTED IN U. S. A. -1. fa AUERBAC~ - • 210:001. 010 srm ... EDP BURROUGHS B 2500 & B 3500 ADVANCE REPORT REPORTS ADVANCE REPORT: BURROUGHS B 2500 AND B 3500 .01 INTRODUCTION Burroughs Corporation announced two new small-to-medium-scale computer systems, the B 2500 and B 3500, on March 29, 1966. The two new systems are billed as the newest members of the "Burroughs 500 systems" computer family. The only previously-introduced members of this family are the B 5500 and the B 8500. There will, however, be no direct program compatibility between the two new systems and either the B 5500 or the B 8500. The Burroughs B 5500 (Report 203:) is a medium-scale computer of highly unusual design; it has been in use for some time and has demonstrated the practicality of multiprogrammed operation and of programming and debugging exclusively in higher-level languages (ALGOL, COBOL, and FORTRAN). The B 8500 is an ultra-large-scale computer, announced last summer, with extensive capabilities for modular expansion, multiprocessing, and multiprogramming. The B 2500 and B 3500 are considerably more conventional in design (i. e., more like most of the other computer systems currently on the market) than the B 5500 or B 8500, although the designers of the two new systems have borrowed certain important concepts from the larger Burroughs systems. These concepts include operation under an integrated Master Control Program, emphasis upon multiprogrammed operation, and use of a "stack" to store subroutine parameters. The Burroughs 500 Systems computer family is due for further expansion during the next few months, probably through the announcement of a small-scale system to compete with IBM's System/360 Model 20 and a large-scale system to fill the gap between the B 5500 and the B 8500. With these additions, Burroughs' computer line should approach the IBM System/360 line in range and suitability for varied applications. The B 2500 and B 3500 systems are fully program-compatible with one another. The only significant differences between the two systems are in internal speed (the B 3500 is twice as fast), maximum number of I/O channels (6 for the B 2500 and 20 for the B 3500), and maximum core memory capacity (60,000 bytes for the B 2500 and 500,000 bytes for the B 3500). Compatibility with the second-generation Burroughs B 200/300 Series and IBM 1401/1440/1460 systems will be achieved through optional emulators. Although the B 2500 and B 3500 use the Figure 1. A small B 2500 tape system. A 4-drive Magnetic Tape Cluster is in the foreground. © 1966 AUERBACH Corporation and AUERBACH Info, Inc. 4/66 BURROUGHS B 2500&B 3500 210:001. 020 .01 INTRODUCTION (Contd.) same data structure and codes as the IBM System/360, there will be no program compatibility between the two lines. The new Burroughs systems are definitely "third-generation" in their use of monolithic integrated circuits and a read-only memory. The read-only memory in the processor holds microprograms which initiate and control all processor operations, thereby reducing the amount of wired logic that must be built into the processor and facilitating the emulation of dissimilar computers. A fairly wide variety of peripheral equipment is offered, though most of it is quite conventional and similar to Burroughs' second-generation peripheral equipment. The only distinctively new peripheral devices are the Magnetic Tape Cluster, which is a compact, economical unit containing up to four tape drives, and the Systems Memory, a low-priced, fast-access disc unit designed to hold the Master Control Program and other software facilities. New single-line and multi-line communications controls provide flexible facilities for data communications and realtime applications. Burroughs continues to stress the speed and reliability of its head-per-track Disk Files. Software support is divided into two levels, Basic and Advanced. Each level is designed for use with a separate operating system. An assembler, sort generator, and report generator are provided at each level. COBOL and FORTRAN compilers, however, are offered only at the Advanced level, and no ALGOL compiler has been promised. At the Basic level - intended for small configurations - the Basic Control Program controls simple stacked-job processing and straightforward I/O operations. Systems equipped with disc storage and at least 20,000 bytes of core memory will usually use the Advanced software. At this level the Master Control Program schedules and controls multiprogrammed operations and performs many other functions usually found only in the operating systems for much larger computers. First deliveries of B 2500 systems (and the Basic Control Program) are scheduled for January 1967. Deliveries of B 3500 systems (and the Master Control Program) will begin in May 1967. The COBOL compiler is scheduled for delivery in July 1967. Burroughs states that typical lease prices will range from $4,195 per month for a small B 2500 tape system to $20,720 per month for a large B 3500 system with 100 million bytes of disc storage and 8 tape units . . 02 DATA STRUCTURE The B 2500 and B 3500 systems provide facilities for convenient handling of variable-length fields composed of either 8-bit bytes or 4-bit digits. Core memory is addressable by digit position. The basic unit of data, however, is the "word, " which consists of 16 data bits plus one parity bit.and is the amount of information that can be read from or written into core memory during each cycle. A word can hold either two 8-bit bytes or four 4-bit digits. Data represented in the 4-bit format can be either signed (with a 4-bit sign digit preceding the most significant numeric digit of the field) or unsigned. Data in the 8-bit format is always unsigned, but all-numeric fields represented in the 8-bit mode can be used as operands in fixed-point arithmetic operations without the need (as in the IBM System/360) for prior conversion to the 4-bit digit mode. Data may be represented internally in either of two codes, EBCDIC or ASCII, as discussed in Paragraph . 14. Floating-point numbers can have variable-length mantissas of up to 100 digits. Every floatingpoint number consists of: one digit that specifies the sign of the exponent, two decimal digits that specify the exponent's value, one digit that specifies the sign of the mantissa, and from :', to 100 decimal digits that specify the mantissa's value. The mantissa always represents a whole number (rather than a fraction as in most computers), with the decimal point assumed to the right of the last digit. / Instructions can consist of one, two, three, or four 6-digit "syllables" or of a single 8-digit syllable. See Paragraph. 051 for a detailed description of the instruction format • . 03 SYSTEM CONFIGURATION The B 2500 "central system" consists of a 2501 Central Processor and one combined input/ output and memory cabinet. Core memory capacity can range from 10,000 to 60,000 bytes in 10, OOO-byte increments. Four I/O channels (two type A and two type B) are included in the basic system; a maximum of two additional channels (one type A and one type B) can be installed. The B 3500 "central system" consists of a 3501 Central Processor, one or two input/output cabinets, and from one to six memory cabinets. Core memory capacity can range from 10,000 to 500,000 bytes in 18 different sizes (see Price Data, Section 210: 221). 4/66 (Contd.) A AUERBACH '" 210:00 I. 031 ADVANCE REPORT .03 SYSTEM CONFIGURATION (Contd.) Six I/O channels (three type A and three type B) are included in the basic system; a maximum of 14 additional channels (seven type A and seven type B) can be installed. Optional features available for both central processors include the B 200/B 300 Emulator, the mM 1401/1440/1460 Emulator, floating-point arithmetic, and a desk-level console. The operations of all peripheral devices are controlled by I/O control units. One I/O control can be connected to each B 2500 or B 3500 I/O channel, and each type of peripheral device requires a different I/O control. Most of the I/O controls (card reader, punch, printer, paper tape, etc.) can accommodate only one peripheral unit each, but the controls for magnetic tape and disc storage devices can accommodate multiple units, as explained in the descriptions of these devices. Further flexibility in the control of magnetic tape and disc operations is provided by a series of Exchange units, which permit a group of tape or disc units to communicate with the central processor via either of two or more I/o control units and the associated I/O channels. The two types of I/o channels differ in their modes of communication with the processor and, therefore, in the data rates they can accommodate. Type A channels transfer only one character at a time to or from core memory and are limited to handling the following low-speed peripheral devices: card readers orpunches, paper tape readers or punches, buffered line printers, listers, MICR sorter/readers, on-line banking subsystems, or the console printer. Type B channels transfer two characters in parallel to or from core memory and can handle the following types of peripheral devices: magnetic tape units, Disc Files, Systems Memory, unbuffered printers, and data communications controls. Through the use of "type B" controls, type B channels can alternatively be used for low-speed peripheral devices. To indicate the range and general makeup of practical system configurations, the components and features required for three of our Standard Configurations (as defined in Section 4:030 of the Users' Guide) are listed below, along with their one-shift monthly rentals • . 031 4-Tape Business System; Configuration n (B 2500) Equipment Rental 1 - 2501 Central Processor with Console and 4 I/O Channels 1 - 2001 Memory Module (10,000 bytes) 1 - 9381-4 4-Station 36KB Magnetic Tape Cluster 1 - 2381-1 36KB Tape Cluster I/O Control 1 - 9240 Printer (700 lpm) 1 - 2241 Printer I Output Control 1 - 9111 Card Reader (800 lpm) 1 - 2110 Card Reader Input Control 1 - 9210 Card Punch (100 cpm) 1 - 2210 Card Punch Output Control Total Rental: $1,195 450 1,300 200 800 75 325 50 350 50 $4,795 .032 6-Tape Auxiliary Storage System; Configuration V (B 3500) Equipment Rental 1 - 3501 Central Processor with Console and 6 I/O Channels 1 - 3002 Memory Module (20, 000 bytes) 1 - 9371 Disk File Electronics Unit 2 - 9372 Disk File Modules (20 million bytes total) 1 - 3373 Disk File I/O Control 2 - 9381-3 3-Station 36KB Magnetic Tape Clusters 1 - 3381 36KB Tape Cluster I/O Control 1 - 9240 Printer (700 lpm) 1 - 324i Printer I Output Control 1 - 9111 Card Reader (800 lpm) 1 - 3110 Card Reader Input Control 1 - 9210 Card Punch (100 cpm) 1 - 3210 Card Punch Output Control 1 - 9340 Console Printer and Keyboard 1 - 3340 Console Printer I/O Control Total Rental: $1,695 1,000 650 1,650 250 2,200 235 800 75 325 50 350 50 55 100 $9,485 © 1966 AUERBACH Corporation and AUERBACH Info, Inc. 4/66 BURROUGHS B 2500&B 3500 210:001.033 .033 10-Tape General-Purpose System; Configuration VIlA (B 3500) Rental Equipment 1 - 3501 Central Processor with Console and 6 I/o Channels 1 - 3510 Additional Type A I/O Channel 1 - 3012 Memory Module (120,000 bytes) 1 - 9370-1 Systems Memory (1 million bytes) * 1 - 3371 Systems Memory I/o Control* 10 - 9392 72KB Free-Standing Magnetic Tape Units 2 - 3393-1 Magnetic Tape I/O Controls 1 - 3491 Magnetic Tape Exchange (2 x 10) 1 - 9240 Printer (700 lpm) 1 - 3240 Printer I Output Control 1 - 9111 Card Reader (800 lpm) 1 - 3110 Card Reader Input Control 1 - 9210 Card Punch (100 cpm) 1 - 3210 Card Punch Output Control 1 - 9340 Console Printer and Keyboard 1 - 3340 Console Printer I/O Control 1 - 3530 Floating-Point Arithmetic Feature Total Rental: $1,695 35 4,500 375 150 5,750 750 250 800 75 325 50 350 50 55 100 100 $15,410 * Included to provide the disc storage needed for Master Control Program use . . 04 INTERNAL STORAGE .041 Core Memory Core memory cycle times are two microseconds in the B 2500 and one microsecond in the B 3500. Read access times are 700 nanoseconds and 350 nanoseconds, respectively. Both processors access one word, consisting of 16 data bits plus one parity bit, per cycle. Because core memory is addressable by digit position and each word can hold four digits, all word addresses are modulo-4. Whenever a specific digit or byte position is addressed, the entire word in which it is located is accessed. Data can be transferred to or from core memory by either the central processor or any of the I/O control units. B 2500 core memory capacities can range from 10,000 to 60,000 bytes in increments of 10,000 bytes (i. e., 5,000 words). B 3500 memory capacities can range from 10,000 to 500,000 bytes in 18 different sizes; see the Price Data section (210: 221) for the available capacities and the associated model numbers. The first 1,200 digit positions of core memory are reserved for use by certain processor instructions, the interrupt ·system, the I/O control units, and the Master Control Program (when used) . In addition, the first 64 digit positions of the core area assigned to each program are usually reserved to hold that program's index registers and other specific information. To prevent accidental over-writing of one program by another during multiprogrammed operation, each core memory address is checked to ensure that it lies between the boundaries established by the base register and the limit register (see Paragraph. 053). If not, the program is interrupted and control is transferred to the Master Control Program. . 042 Address Memory The B 2500 and B 3500 Central Processors contain an Address Memory unit with a 100-nanosecond cycle time. Address Memory is an array of from 24 to 120 word locations, expandable in increments of 12 words. Each word is six 4-bit digits in length - long enough to hold the absolute address of any core memory location. Address Memory's purposes are to reduce the number of core memory accesses required and to perform a number of functions that usually require separate processor registers. The first eight words are used by the processor, and two words are assigned to each installed I/o channel. The I/O channel words contain the initial and final core memory addresses for the I/O operation in progress on the associated channel; these words are used by the I/O control units to determine the core memory locations where output data is to be accessed or input data stored . • 043 Systems Memory Burroughs' 9370 Systems Memory is a new, ~ingle-disc storage unit designed to provide, at a fairly low cost, the random-access storage required to hold the systems software and the user's program library. As in Burroughs' larger Disk Files, one read/write head serves each track, so no access-arm movement is required. Average access time is 17 milliseconds, and the peak data transfer rate is 291,000 bytes per second. 4/66 fA AUERBACH ® (Contd.) 210:001. 044 ADVANCE REPORT .043 Systems Memory (Contd.) Two models of Systems Memory are offered. Model 9370-1 uses only one face of the disc and has a capacity of 1,000,000 bytes; Model 9370-2 uses both disc faces and holds 2,000,000 bytes, There are 100 data tracks per disc face. Each track is divided into 100 segments, and each segment holds 100 bytes (or 200 digits) of information. A longitudinal parity character is recorded at the end of each segment. Systems Memory is connected to a B 2500 or B 3500 Processor by means of a Systems Memory I/O Control. Two Systems Memory units can be connected to a single I/O Control by adding a Systems Memory Exchange . . 044 Disk File Subsystem The 9371/9372 Disk File Subsystem is similar to the Burroughs Disk Files that have been in use for nearly two years with B 200/300 Series and B 5500 systems (see Report Sections 201:042 and 203:043). The use of a fixed read/write head for every data track provides fast access times (20 milliseconds average) and high reliability. Average data transfer rate is 200,000 bytes per second. The Disk File Subsystem is compatible with the 9370 Systems Memory in segment size (100 bytes) and addressing structure, so either unit can be used to hold the systems software and program library. Each 9372 Disk File Module contains four non-removable discs and holds 10 million bytes. From one to five 9372 Modules can be connected to a 9371 Disk File Electronics Unit, providing up to 50 million bytes of storage. Disk File Exchanges (usable only in B 3500 systems) permit up to ten 9371 Electronics Units and the associated Disk File Modules to be connected to from one to four Disk File I/O Controls. The available Exchanges are designated 1 x 5, 2 x 5, and 4 x 10: the first number is the maximum number of Controls and the second is the maximum number of Electronics Units that can be interconnected. Since each I/o Control is connected to a separate channel, the 2 x 5 and 4 x 10 Exchanges, in effect, provide "floating" I/O channels and two-way or four-way simultaneity for Disk File operations . . 05 CENTRAL PROCESSORS The central processors used in B 2500 and B 3500 systems are functionally identical and completely program-compatible; they differ only in internal speeds. The processor contains the arithmetic unit, logic controls, and interrupt facilities for a B 2500 or B 3500 system. No facilities for multiple-processor configurations have been announced to date . . 051 Instruction Formats There are two basic types of instructions: I/O instructions (called "descriptors" and discussed in Paragraph .11) and processor instructions. Processor instructions may be one, two, three, or four 6-digit "syllables" in length and may contain - respectively zero, one, two, or three core memory addresses. (Branch instructions are eight digits in length, and therefore constitute an exception to the normal instruction format. ) The first two 4-bit digits of a processor instruction designate the operation code and initiate execution of the appropriate string of microprograms stored in the system's Read-Only Memory, a resistive-type memory with a 100-nanosecond access time. These microprograms fetch the remainder of the instruction and perform the specified operation. In most instructions, the third, fourth, fifth, and sixth digits of the first syllable specify the lengths of the A and B operands, which can range from 1 to 100 digits or bytes, or up to 10, 000 words (depending upon the operation). In multi-syllable instructions, the second, third, and fourth syllables (when present) specify the A-field, B-field, and C-field addresses, respectively. The first digit of each address syllable specifies: (1) which, if any, of three index registers shall be used in forming the machine address, and (2) the format of the data field. Each program has its own complement of three 8-digit index registers, which are held in reserved locations in core memory. There are four format possibilities: signed 4-bit, unsigned 4-bit, unsigned 8-bit, or indirect address (which means that the data field's address, rather than the data field itself, will be found in the memory location specified by the address syllable). The remaining five digits of each address syllable specify the data field address itself. In many instructions, the second syllable may contain a literal operand rather than the A-field address. Literal operands are limited to a maximum length of three bytes (or six digits). '" © 1966 AUERBACH Corporation and AUERBACH Info, Inc. 4/66 BURROUGHS B 2500 & B 3500 210:001. 052 .051 Instruction Formats (Contd.) All addresses in processor instructions are "base-relative." This means that each program is written as if it started in the first location of core memory. At execution time, each address is automatically incremented by the contents of a three-digit, modulo-1000 base register to form an absolute address (which can be further modified by indexing if desired). The base-relative addressing technique facilitates program relocation and segmentation; it also permits up to 1 million digits (500,000 bytes) of core memory to be addressed although the instruction addresses are only five digits long • . 052 Processing Facilities The instruction repertoire includes efficient facilities for arithmetic, data movement, comparison, and editing of variable-length decimal and alphanumeric data fields. No binary arithmetic facilities are available, although logical AND, inclusive OR, and exclusive OR instructions are provided. Fixed-point decimal arithmetic instructions include three-address addition, subtraction, multiplication, and division, as well as two-address addition and subtraction. The optional Floating-Point feature provides three-address instructions to add, subtract, multiply, and divide floating-point operands with 2-digit exponents and mantissas varying from 1 to 100 digits in length. Representative execution times are shown in Table 1. A novel feature of the new Burroughs processors is their ability to combine numeric operands in the 4-bit and 8-bit data formats in a single operation, without prior transformation. The programmer can specify the format in which the results of such mixed-format operations shall be expressed: signed 4-bit, unsigned 4-bit, or 8-bit. A group of Scan instructions facilitates the coding of search operations by enabling the programmer, by means of a single instruction, to search a string of up to 100 characters for the presence (or absence) of a specified character or group of characters. A Translate instruction effects translations from any 4-bit or 8-bii code to any 8-bit code through the use of a table in core memory. The Edit instruction moves up to 100 characters or digits from a source field to a destination field under the control of a string of "micro-operators" in core memory, which can specify that any character shall be inserted, suppressed, or floated under a variety of conditions. This flexible instruction permits normal dollar-and-cent punctuation and either floating dollar sign or check protection to be accomplished in a single operation. Two special instructions, Enter and Exit, facilitate entry to and exit from subroutines, especially when the subroutines are used in nested or recursive fashion. The Enter instruction causes return control information and subroutine parameters to be moved into the "stack," which is a core memory area that has been reserved by the programmer. If another subroutine is entered prior to exit from the first subroutine, additional return control information and parameters will be moved into the stack, causing the previously-stored parameters to be "pushed down" deeper into the stack. Thus, subroutines can be nested or used recurSively to any level up to the capacity of the stack . . 053 Operational States The central processor always operates in one of two states: the Normal State, in which user programs are executed, or the Control State, in which the functions of the MCP or BCP operating systems are performed. Several "privileged" instructions can be executed only in the Control state. These instructions permit the MCP or BCP to initiate I/o operations and to control the program mix by setting and clearing registers and flip-flops. / TABLE I: REPRESENTATIVE EXECUTION TIMES, IN MICROSECONDS Task c=a+b b=a+b c=axb c = alb Move a to b Compare a to b Fixed Point (signed 5-digit operands) Floating Point (5-digit mantissas) B 2500 B 3500 B 2500 75 66 416 1810 54 60 37.5 33 208 905 27 30 102 - 462 1860 - B 3500 51 - 231 930 - (Contd. ) 4/66 A AUERBACH ® 210:001. 060 ADVANCE REPORT .053 Operational States (Contd.) A powerful interrupt system causes the processor to enter the Control State and branch to the MCP or BCP whenever any of the following conditions occurs: completion of an I/O operation, memory parity error, memory address error, invalid instruction (including attempted execution of a privileged instruction in the Normal State), instruction time out (failure to complete the execution of an instruction within a preset time limit), and clock interrupt. Memory address errors can result from the formation of an address beyond the bounds established by the base and limit register settings, a non-decimal digit in an address, or a "non-synchronized" address (i. e., an address that is not modulo-2 or modulo-4 when a particular instruction or data format requires such an address). A clock interrupt occurs when the processor's six-digit timer, which is incremented once each millisecond, reaches a programmer-specified control value. Memory protection - an essential feature for successful multiprogramming - is provided by the hardware, using the base and limit registers and the interrupt system. When the MCP initiates execution of a program, it sets the base register to the program's initial core memory location. The limit register's setting is made equal to the base register setting plus the total core memory requirement for the program. Before data is fetched, all machine addresses are checked against the base and limit register settings. An out-of-bounds address causes an interrupt and a transfer of control to the MCP, which suspends execution of the offending program . . 06 CONSOLE The operator's console for both the B 2500 and B 3500 systems is mounted on the front of the central processor cabinet, above a shelf that serves as a small worktable. The console consists of a sloping control panel and a vertical display panel. The display panel features two six-digit Nixie tube displays that can be used, under console control, to display instruction syllables, addresses, and the contents of selected memory locations and registers. The 9340 Console Printer and Keyboard is an optional Teletype Model 33 or Model 35 Keyboard Send/Receive set that uses one type A I/O channel and provides keyboard input and printed output at a maximum speed of 10 characters per second. The 9340 is required for operation under the Master Control Program . . 07 INPUT-OUTPUT; PUNCHED CARDS AND PUNCHED TAPE Burroughs offers three card readers, two card punches, a paper tape reader, and a paper tape punch for use with B 2500 and B 3500 systems. Except for certain difference in codes, all of the new units are similar to previous Burroughs peripheral units used with B 100/200/300 Series and B 5500 systems, as described in Report Sections 201:071 thru 201:075 . . 071 Card Readers The 9110 Card Reader is a compact unit that reads standard SO-column cards photoelectrically, in column-by-column fashion, at a peak speed of 200 cards per minute. An immediate-access clutch permits the reading of an SO-column card to be completed within a maximum of 350 milliseconds after a "start feed" signal is received. The input hopper and output stacker have a capacity of 450 cards each. The 9111 Card Reader uses an immediate-access clutch, a belt drive mechanism, and photoelectric read cells (one for timing) to read cards of 51, 60, 66, or SO columns at rate of 800 cards per minute. The input hopper and output stacker can each hold up to cards and can be loaded and unloaded while the reader is operating. Optional features 40-column Treasury Checks or the round holes in Postal Money Orders to be read. 13 a peak 2400 permit The 9112 Card Reader has a peak reading rate of 1400 cards per minute. Its appearance and physical characteristics are the same as those of the 9111 Card Reader described above. All three card readers can read either the EBCDIC or the generally similar BCL (Burroughs Common Language) card code and translate it automatically to EBCDIC internal code. Binary card images can be read and stored in memory without conversion; the contents of each card column are stored in the six low-order bit positions of two consecutive bytes . . 072 Card Punches ( \ The 9210 Card Punch can punch standard 80-column cards at a peak rate of 100 cards per minute. Cards are punched one row at a time by a single row of 80 die punches. Punching accuracy is checked by the hole-count method. The input hopper and output stacker can each hold up to 800 cards and can be loaded and unloaded while the punch is operating. © 1966 AUERBACH Corporation and AUERBACH Info, Inc. 4/66 210:001.073 BURROUGHS B 2500 & B 3500 .072 Card Punches (Contd.) The 9211 Card Punch punches 80-column cards, in row-by-row fashion, at a peak rate of 300 cards per minute. Punching accuracy is checked by the hole-count method. The input hopper can hold up to 3500 cards. There are three stackers: a 3000-card primary stacker, a program-selectable 850-card auxiliary stacker, and a 750-card error stacker. Both card punches can perform automatic translations from the EBCDIC internal code to EBCDIC card code. Alternatively, binary cards can be punched; the contents of the six low-order bit positions of two consecutive bytes of core memory are accessed and punched into each card column. A standard feature in the Card Punch Control permits automatic translation from EBCDIC internal code to the 64-character BCL (Burroughs Common Language) code, or optionally to the BULL or ICT card code . . 073 9120 Paper Tape Reader The 9120 can read punched tape with 5, 6, 7, or 8 code levels at a peak speed of either 500 or 1,000 characters per second. Rated start and stop times are 5 and 20 milliseconds, respectively, and the reader can stop between consecutive characters. A standard plugboard permits the bit configurations read from tape to be interchanged and/or inverted. Automatic translation from either 5-level Baudot or 6-level BCL tape code to EBCDIC internal code is standard. For other punched tape codes, users can either add the optional 9926 Input Code Translator, which provides flexible code conversions under plugboard control, or read the tape codes directly and use programmed translation . . 074 9220 Paper Tape Punch The 9220 can punch 5-, 6-, 7-, or 8-level tape at a peak speed of 100 characters per second. A standard plugboard permits the bit configurations from core memory to be interchanged and/or inverted prior to punching. Automatic translation from EBCDIC internal code to either 5-level Baudot or 6-level BCL tape code is standard. For other punched tape codes, either programmed translation or the optional 9928 Output Code Translator can be employed • . 08 INPUT-OUTPUT; PRINTERS .081 Line Printers Four line printers of the conventional drum type are available for use with B 2500 and B 3500 systems. Users can choose a buffered printer with a peak speed (at single spacing) of either 700 or 1040 lines per minute, or an unbuffered model with a peak speed of either 815 or 1040 lines per minute. Table II lists the peak printing speeds and skipping speeds of the four models. All four printers have 120 print pOSitions, with 12 additional positions available through use of the 9941 option. All models use the 64-character Burroughs Common Language character set. (Other character sets are available on a special-order basis.) Forms can be from 5 to 20 inches in width and can have a maximum length of 22 inches (when printing at 6 lines per inch) or 16.5 inches (at 8 lines per inch). Vertical format control is provided by a 12-level carriage control tape loop. TABLE II: LINE PRINTER SPEEDS Model No. Peak Printing Speed, lines/minute Skipping Speed, inches/ second Buffer 9240 9241 700 1040 25 to 40 25 to 40 Yes Yes 9242 9243 815 1040 25 (75 with option) 25 (75 with option) No No / .082 9244 Tape Lister The Burroughs Tape Lister is designed primarily to provide high-speed printed listings of MICR documents as they are read by a MICR Sorter-Reader. From 6 to 18 listing tapes can be individually advanced and printed upon, enabling the contents of each Sorter-Reader pocket to be listed on a separate tape. The six-tape 9244-1 master unit can be used alone, or one or two six-tape 9244-2 slave units can be connected to it. The peak printing rate of 1565 lines per minute can be maintained when printing is restricted to a 16-character set (the digits 0-9 and six special symbols). When the full, alphanumeric 4/66 (Contd.) A AUERBACH greater than " and IV or ,not r+ arrow right .t arrow up + arrow down ~ identity %percent [ open bracket ] close bracket ; semicolon S;; ~ Note: For business applications © 1962 by Auerbach Corporation and BNA Incorporated ~ %$ replace I\V, 10/62 cpc 1604-A 243:081.300 § 081. .3 EXTERNAL STORAGE . 31 Form of Storage .52 .521 Input: . . . 522 Output: · 523 Stepping: . • 311 Medium: • • • • continuous fanfold sprocketpunched stationery. • printing of engraved chars. .312 Phenomenon: .32 .524 Skipping: Positional Arrangement . 321 Serial by: . .322 Parallel by: .323 Bands: . 324 Track use: . . 325 Row use: .33 Coding: . . 34 Format Compatibility: . . . . . . 35 Input-Output Operations one line at 6 lines/inch . 120 columns at 10 chars/ inch. 1. all for data . all for data . as in Data Code Table No. 1. . 525 Marking: · 53 Code Translation: automatic translation from internal BCD code as in Data Code Table No.!. .54 Format Control: . none. · 55 Control Operations Disable: . . . . . Request interrupt: Select format: Select code: . . . . none. Physical Dimensions .56 . 351 Overall width: . . . 352 Length: . . . . . .353 Maximum margins Left: Right: . . . • . 4 to 19 inches . up to a 17 inch form. CONTROLLER .41 Identity: .42 Connection to S},:stem . 421 On':line: .422 Off-line: . .43 Printer ready: . . . 3.5 inches. 3.5 inches. 24 . none. .6 PERFORMANCE .61 Conditions .431 Devices per controller: 1. .432 Restrictions:. . . . . none. IA: .44 I B: Data Transfer Control . 443 Input-output area access: .444 Input-output area lockout: . 445 Table control: . 446 Synchronization: no . no . provided power is on, 1604 is selected, paper is not in motion, and printer is not out of paper. if power is off, or 1604 is not selected, or paper is in motion, or printer is out of paper. Blocks . one line of 120 characters . . address limits in instruction. restricted FORTRAN set, print drum 1, 000 rpm. restricted FORTRAN set, print drum 667 rpm. full character set, print drum I, 000 rpm • full character set, print drum 667 rpm. Speeds .621 Nominal or peak speeds IA: . II A: • I B: lIB: . . 622 Important parameters Paper speed: none. none. automatic. . 51 II B:. .62 each word. PROGRAM FACILITIES AVAILABLE 10/62 II A: . 1 to 120 characters. core storage; 1 char per word, in 6 low-order bit positions . •5 . 511 Size of block: . 512 Block demarcation Output: . . yes. Print Control Unit . Connection to Device . 441 Size of load: . •442 Input-output areas: no . Testable Conditions Printer not ready: .4 none. print one line • print and step 0, 1 or 2 lines . step 1 or 2 lines. 8 levels of skipping are possible. skipping is controlled by a tape loop . none. I, 000 lines/min. 500 lines/min. 667 lines/min. 333 lines/min. 25 inches/sec., max • 9, 000 lines/min., max. Line length: 120 columns . Line spacing: 6 lines/inch. Character spacing: 10 chars/inch . Drum cycle, I A & IIA: 60 m. sec • Drum cycle, I B & II B: 90 m. sec • 623 Overhead: . . . . . . single clutch point. , I AUERBACI£L@Il INPUT·OUTPUT: CDC 1612 PRINTER § 243:081.624 .71 081. .624 Effective speeds I A: . Adjustment 1,000/ (1+ [ (N + 6)/9]) lines/min. 1,000/(2+ [N/9]) lines/min. 667/ (1+ [ (N + 6)/9]) lines/min. 677/ (2+ [N/9] ) lines/min. interline spacing in lines. Note: [x] means "integer part of x." II A:. I B: II B: . N: These are shown graphically at end of the section. Adjustments (Contd.) .72 button Single line feed: Paper tractor adjustment, button adjustable form tractor Comment moves to top of form under control of format channel 8. advances paper. provides horizontal positioning for paper Widths of 4 to 19 inches. Other Controls Form Comment Motor Speed: switch Printer Ready: combination buttonlamp switch selects print drum speed of either 1,000 or 667 rpm. indicates that printer is "ready." Function .63 Method Top of form: Demands on System Component m.sec Condition per line Processor: IA IIA IB lIB or Percentage 0.6 0.3 0.4 0.2 0.384 0.384 0.384 0.384 This is based on a full line of 120 characters. It would be proportionately less for shorter lines measured from the left margin. The time taken in setting the data in storage is not taken into account. 160/1604 Selector Switch: .73 Loading and Unloading . 731 Volumes handled: . .732 Replenishment time: .7 EXTERNAL FACILITIES .71 Adjustments Adjustment Character phasing: Penetration control: Method Comment knob performs fine adjustments of print quality to corres pond to motor speed selec o tion. adjusts hammer mounting plate print cylinder gap to accomodllte different thicknesses of paper. adjusts line of print on form. adjusts paper tension. knob Form positioning: knob Paper tension: knob © selects the correct inputs for 1604· A or 160 computer. paper stack 12 to 14 inches high. 1 min. printer must be stopped • 1 to 3 mins. . 733 Adjustment time: . .734 Optimum reloading period:. . . . . 34 mins. Basis: using 1,000 17 -inch 2-part forms, printing full character set, 1 line every inch. •8 ERRORS, CHECKS AND ACTION: Check or Error Interlock Action Recording: Output Llock size: Invalid code: Exhausted medium: stop printer. Imperfect medium: 1962 by Auerbach Corporation and BNA Incorporated none. none. all codes valid. micro-switch check micro-switch check stop printer. 10/62 CDC 1604-A 243:081.800 EFFECTIVE SPEED CDC 1612 PRINTER Condition: Print cylinder revolving at 1,000 r.p.m. 6,000 5,000 4,000 3,000 2,000 1,000 900 800 700 600 500 400 Effective Speed: Printed Lines Per Minute Restricted ,FOR TRAN. Set 300 Fuil Character Set 200 I 100 90 80 70 60 50 40 30 20 o 1/2 1 2. Inter-Line Pitch in Inches 10/62 4 5 243:081.801 .INPUT-OUTPUT: CDC 1612 PRINTER EFFECTIVE SPEED CDC 1612 PRINTER Condition: Print cylinder revolving at 667 r.p.m. 6,000 5,000 4,000 3,000 2,000 1,000 900 800 700 600 500 400 Effecti ve Speed: Printed Lines Per Minute 300 Restricted FORTRAN Set 200 Full "Character Set I 100 90 80 70 60 50 40 30 20 o 1/2 1 2 3 4 5 Inter-Line Pitch in Inches © 1962 by Auerbach Corporation and BNA Incorporated 10/62 243:091.100 • SImARD II REPORTS EDP CDC 1604-A Input-Output CDC 606 Magnetic Tape INPUT-OUTPUT: CDC 606 MAGNETIC TAPE UNIT § .12 091. .1 GENERAL . 11 Identity: . .12 Description Magnetic Tape Unit. CDC 606. The CDC 606 Magnetic Tape Unit provides the following facilities under program control. While writing: (1) Packing density either 200 or 556 rows per inch. (2) Binary or BCD coding. (3) Interrupt on either next error, or when ready. (4) Skip bad spot. (5) Write end-of-file mark. (6) Rewind with or without interlock. While reading: (1) Binary or BCD coding. (2) Read one file, or one record. (3) Skip one file or one record, forward or backward. (4) Interrupt on either next error or when ready. (5) Rewind with or without interlock. At any time, individual sense instructions can be used to test for the following conditions: (1) Parity Error. (2) Length Error. (3) End-of-tape mark sensed. (4) Tape positioned at Load Point. (5) Interrupt requested on unit. (6) Unit available. (7) Certain types of program error have occurred and have been suppressed (e. g., read selection while writing is in progress). The CDC 606 Magnetic Tape Unit, controlled by the CDC 1615 Control Unit, forms a magnetic tape system which can be attached to one or two computers. If attached to two computers, such as a CDC 1604-A and a CDC 160-A, control can be switched manually or by program from one computer to the other. The 606 has a peak data rate of 83,400 characters per second. At this peak speed, one 606 requires 3.3 percent of the 1604-A running time. Any 1615 Control Unit can operate on two channels simultaneously and if three controllers are present, the maximum of six tape units can operate simultaneously at this peak speed. The total load on the central processor is 20 percent, and the character rate is 500,400. No restrictions in the number (up to six) of I/O units operating simultaneously are necessary, provided no faster I/O unit is attached. This is one of the major differences between the CDC 1604 and CDC 1604-A. © Description (Contd.) The tapes are completely compatible with IBM 729 written tapes having densities of either 200 or 556 characters per inch. Both CDC and IBM tape units are similar except that the CDC uses pneumatic capstans instead of pinch rollers. Reading and writing can only be done in a forward direction; searching for EDT, and rewinding can be done in either direction. The maximum rewind time of a 2, ~OO foot tape is 80 seconds. Data is stored in the computer in multiples of eight characters; i. e., sets of full words. If a block being read from tape does riot fill an exact number of; words, the least significant end of the last word is filled with zeroes before being put into the. core storage. If this occurs, a length error is recorded, and program examination of the Buffer Control Word can determine the cause. However, it is not possible to determine how many zeroes have been incorporated in the record. The adding of zeros will never occur when tapes written on the CDC 1604 or CDC 1604-A are being used, but may occur when ·tapes written on other machines (including the CDC 160 and 160-A) are used. .13 Availability:.. . 14 First Delivery: .2 . 21 PHYSICAL FORM Drive Mechanism 2 to 4 months. . . . August, 1962. . 211 Drive past the head: . .212 Reservoirs Number: . Form: . . Capacity: . .213 Feed drive: . 214 Take-up drive: . .22 pneumatic capstan . 2. vacuum. each about 7 feet. motor. motor. Sensing and Recording Systems . 221 Recording system: . . 222 Sensing. system: . .223 Common system: . 23 Multiple Copies: . .24 Arrangement of Heads magnetic head • magnetic head. two heads. none. Use..of station: . Stacks: . . . . . erase. 1. Use of station: Distance: . . . Stacks: . . . . Heads/ stack:. Method of use: recording. 0.4375 inches. 1. . . • . Use of station: • Distance: . . • Stacks: • . . . . Heads/ stack:. . Method of use: • 1962 by Auerbach Corporotion and BNA Incorporated 7. 1 row at a time. sensing. 0.3 inch. 1. 7. 1 row at a time. 10/62 CDC 1604-A 243:091.300 § 091. .3 EXTERNAL STORAGE .31 Form of Storage . 312 Phenomenon: . · 322 Parallel by: · 324 Track use Data: . . . Redundancy check: . Timing:. • . •. . Control signals: Unused: • Total: . 325 Row use Data: • Redundancy check: • Timing: • . . . . Control signals: . 34 • 35 Blocks plastic tape with magnetizable sur.face. magnetization . .512 Block demarcation Input: . . . . . . . 1 to N rows at 200 or 556 rows/inch. 7 tracks. .52 1 to N words, limited by available core storage; 8 rows per word. gap on tape or cut-off specified in buffer control word. Output: • . . . . . . . cut-off specified in buffer control word. Input-Output Operations 6. · 521 Input:. . . . . • . . . . 1 block or file forward, with cut- off available at N words; zeros fill in the O. last word. O. · 522 Output: . . 1 block forward of N 7. words • none. · 523 Stepping: • 1 to N. 1 block or file forward. · 524 Skipping: . l. 1 block or file backward. O. erase 3 .. 5 inches forward o(record and segment (to skip defective tape marks are optional). areas). unused: . O. · 525 Marking: • . . . . . . . end-of-file mark, preCap: . 0.75 inch inter-block gap. ceded by an automatic 6.0 inch end-of-file mark. six-inch gap, followed by a longitudinal parity Coding: . . . . . . • • . BCD mode; one tape row per character and the regular character as in Data Code interblock gap. Table No.3, even parity. · 526 Searching: . • . . none • 1. o (self clocking). Format Compatibility:. mM BCD and binary codes at 200 and 556 rows per inch. Physical Dimensions 0.50 inches . 2, 400 feet per reel. . 351 Overall width: .352 Length:. . . . · 53 Code Translation: matched codes. .54 Format Control: . none. · 55 Control Operations Disable: . • . . . . Request interrupt: . Select format: Select code: .4 CONTROLLER . 41 Identity: . . . . . 42 Connection to System • Control Unit 1615. 6. . 421 On-line: .422 Off-line: can be switched manually or by program between main and satellite computers. . 43 Connection to Device: . up to 8 per 1615. .44 Data Transfer Control . 441 Size of load: . . . . 442 Input- output areas: ·.443 Input- output area access: . . . . . • 444 Input- output area lockout: . . . . 445 Table control: . . . 446 Synchronization: • .. 10/62 .51 Positional Arrangement · 321 Serial by: • .33 PROGRAM FACILITIES AVAILABLE .511 Size of block: .311 Medium: . . . · 32 ·5 1 to N words, limited by available core storage. core storage. each word. none . none. automatic . Rewind: Unload: . .56 only by unload. yes, either for error or when free. no . yes, binary mode or BCD mode . yes. yes . Testable Conditions no. yes. yes. yes, end-of-tape mark indicates a minimum of 8 feet remaining (approx. 20,000 chars). Busy controller: . • . . no. End of medium marks: end-of-tape mark (reflective spot). load point • yes. Ready to read: . • Ready to write: • yes. . parity or length error Error condition: . separately. whether selected to Interrupt condition: interrupt. Disabled: • . . . . Busy device: • . . Output lock: . • . Nearly exhausted: 243:091.600 CDC 606 MAGNETIC TAPE UNIT §091 • .72 •6 PERFORMANCE · 61 Conditions Function I: . I Full rewind time: . Interblock gap: · 623 Overhead: . • . • . . • 624 Effective speed, characters/ sec: 30,000 • Condition Processor: Processor: max4m.sec max 4 1. 3 min. 0.75 inch max8m.sec/ block m.sec. 1.3 min. 0.75 inch. max 8 m. sec/ block. 83,400N/(N +698) (See Graph) 30,000N/ (N+240). • 73 absence of ring inhibits tape writing. Load Point: plastic ring affixed to tape reel button Unload: button • 0032 • 0032 or . 732 Replenishment time: • . 734 Optimum reloading period: . . • • . . . reel. 2,400 feet; for 1, 000 char blocks, 5,000,000 at 200 char/inch; 11,300,000 chars at 556 char/inch . 1. 0 to 1. 5 minutes . 4 minutes. ERRORS, CHECKS AND ACTION Percentage 3.3• 1.2• Error Check or Interlock Recording: read after write with lateral parity check Reading: lateral and longitudinal parity checks .7 EXTERNAL FACILITIES Input area overflow: check • 71 Adjustments Output block,size: Invalid code: Exhausted medium: present. all codes valid reflective spot on tape none. none. check Adjustment: Method: . Comment: . recording density. switch. selects high or low density, but is overridden by program changes. © lowers tape into reservoirs and winds tape forward to load point. removes tape from reservoirs and raises upper portion of head assembly. Loading and Unloading .731 Volumes handled Storage: Capacity: • . . . .8 m. sec per word II select 1 of 8 addresses. 200 char/ inch. Demands on Sxstem Component Comment II • 621 Nominal or peak speeds: 83,400 · 622 Important parameters Name Density:. • . . •. 556 char/inch Start or stop time: Form dial File protection ring: Speeds Condition .63 Unit Number Selector: high density (556 char/inch). low density (200 char/inch). II: .62 Other Controls Imperfect medium: Timing conflicts: Parity error: 1962 by Auerbach Corporation and BNA Incorporated Action indicator, alarm and program sense. indicator, alarm and program sense. stop transfer, set counter. stalls computer. programmed sense. programmed sense. 10/62 243:091.800 § CDC 1604-A 091. EFFECTIVE SPEED CDC 606 1,000,000 7 4 2 ---- 100,000 7 ~'b ~~ 4 ~,. 'O'(s:J~~~\.~ .... "'" ~o~«X ~ ~ ~.,,~ 2 ~~ ~\.o Characters Per Second 'O~~ee~ /~ 7 / / 4 2 1,000 / '/ / / // , / 7 4 2 100 2 10 7 100 2 4 1,000 Characters Per Block .--_ _..,-A 10/62 I AUERBAC~~ 2 4 7 10,000· 243: 101.100 _STANDARD· EDP • REPORTS CDC 1604-A Input-Output 161O-A Control Unit INPUT-OUTPUT: 1610-A CONTROL UNIT § .12 101. .1 GENERAL .11 Identity:. . .12 Description Description (Contd.) In the output mode it can operate one: • mM 5·33 Card Read Punch, used as a card Control Unit. 161O-A. punch at 100 cards per minute. • mM 407 Accounting Machine, used as a line printer at 150 lines per minute. • mM 523 Gang Summary Punch, used as a card The CDC 161O-A Control Unit contains independent input and output connections which can link a group of mM peripheral units to either the CDC 1604, 1604-A, 160, or 160-A computers. In the case where a 1604 or 1604-A is operating in conjunction with a CDC 160 or 160-A, the CDC 161O-A and its associated units can be switched manually, but not by program, from one computer to the other. punch at 100 cards per minute. The printer, either punch and either card reader can be physically connected at one time, and each may be separately addressed. The mM 88 and 407 units may be used in their normal off-line manner. No gang or summary punch is available with either the 523 or 533. On-line control of the 88, 407 and 523 by the computer requires modification of the control panels so that each unit is wired in the CALCULATE ON state (the 533 is wired directly and has no provision for control panel modifications). The CDC works in row binary; that is, it treats a card as containing twelve 80-bit words. Cards punched in column binary or Binary Coded Decimal require programmed conversion. All data transfers correspond to a card image. Each 80-bit row of a card corresponds to the least significant 40-bit patterns of two computer words. The information on a card, therefore, is stored in 24 core storage locations (as opposed to 10 words when BCD format is used). In the input mode the 1610 can operate one: • mM 88 High Speed Collator, used as a card reader; either one or both independent card feeds at 650 cards per minute individually or 1,300 cards per minute jOintly; or one feed with a second read station at 650 cards per minute. All external function code instructions relevant to the 1604-A computer are listed in Section :121. .13 Availability:. . 2 months. • mM 533 Card Read Punch, used as a card reader at 200 cards per minute. © . 14 First Delivery: • 1962 by Auerbach Corporation and BNA Incorporated 1961. 10/62 243: 111. 100 CDC 1604-A Simultaneous Operations SIMULTANEOUS OPERATIONS ~ .2 Ill. •1 SPECIAL UNITS . 11 Identity:.... . 12 Description CONFIGURATION CONDITIONS: .'. . . none . incorporated in central processor • CLASSES OF OPERATIONS A 1604-A computer contains seven input-output channels. Six of these channels are arranged in pairs of one for input and one for output. These three pairs are used for the input-output devices and are fully buffered. The seventh channel is not buffered and requires central processor control. Class Members A: int;erna1 processing. transmit output data to any one device connected with channels 2, 4, 6. C: . . . . . . . . . . transmit input data from any one device connected with channels 1, 3, 5. D: transmit output data on channel 7. E: transmit input data on chllnnel 7. paper advance. F: magnetic tape rewind. B: •. Logically, up to eight controllers can be connected to each pair of channels, and up to eight devices can be connected to some controllers; however, power supply considerations impose lower practical limits on many combinations. Each channel operates independently during data transfers between an input-output device and a block of loca tions in the store. Magnetic tape rewind and paper advance are independent operations. The CDC 1604-A has an Auxiliary Sequence Control which controls single word transfers betweeen core storage and the buffered input-output channels. This, unlike the CDC 1604, is independent of the instruction sequence. Provided no unit with a transfer rate of greater than 125,000 characters per second is attached, there are no limitations to the simultaneity of the input-output units; that is, the CDC 1604-A can simultaneously compute, input from three channels, and output to three channels. © .4 RULES a + d + e = at most 1. b = at most 3. c =atmost3. f =atmostN. N = number of appropriate devices attached. 1962 by Auerbach Corporation and BNA Incorporated 10/62 243: 121.1 01 • STANDARD ED:!? _ CDC 1604-A REPQRTS Instruction List INSTRUCTION LIST § 121. OP INSTRUCTIONt Index Designator Addr. OPERATION Octal Code Arithmetic ADD SUB MUI DVI b b b b m m m m 14-----15-----24-----25------ MUF DVF b b m m 26-----27 ------ RAD RSB RAO RSO INA b b b b b m m m m Y 70-----71-----72-----73-----11------ INI b Y 51------ ENA ENQ ENI b b b Y Y Y 10-----04-----50------ (A) + (M) ---+ A (A) - (M)~ A (A) x (M) ---+ QA; least significant portion in A (QA) + (M) --;.. A; remainder~ Q; Sign of Q must be preset to the sign of A (A) x (M) ~ AQ; least significant portion in Q. (AQ) + (M)~ A; remainder ~ Q; jf A is zero, it must be preset to the sign of Q (M) + (A)~ A --;.. M (M) - (A)~ A~M (M)+ 1~A~M (M) - 1~A~M y + (A)~A. Y is a 14-bit plus sign literal in the y field of the i!\5'truction Y + (B )~ Bb; if the b designator has a zero value then this instruction becomes a pass, or do nothing Y~(A) Y~(~ Y~(B ) Floating: Point Arithmetic FAD FSB FMU FDV b b b b m m m m 30-----31-----32-----33------ SCA b k 34------ SCQ b k 35------ (A) + (M)--;" A (A) - (M) ~ A (A) x (M) ~ A (A) + (M) -+ A rounded; rounded; rounded; rounded; rounding rounding rounding rounding residue'-+ Q residue ~ Q residue ~ Q residue ~ Q A left until (A47) =I (A46) or K = 0 Reduce K by one per shift; Kfinal ~ Bb AQ left until (A47) =I (A46) or K = 0 Reduce K by one per shift; Kfinal--;" Bb;O:s.. K.$. 777778 Logic SST b m 40------ Set (An) = 1 for (Mn) = 1 SCL b m 41------ Clear (An) to zero for (Mu) = 1 SCM b m 42------ SSU b m 43------ (Mn)~ LDL ADL SBL STL b b b b m m m m 44-----45-----46-----47------ (A) + [logical product of (Q) and (M) ] ~ A (A) - [logical product of (Q) and (M)]--;" A Logical product of (A) and (Q)~ M Complement (An) for (Mn) = 1 An for (Qn) = 1 Logical product of (Q) and (M) ~ A Logic Shift ARS QRS LRS b b b k k k 01-----02-----03------ ALS QLS LLS b b b k k k 05-----06-----07------ Shift (A) right K binary places; sign bit is extended to the right. Shift (Q) right K binary places; sign bit is extended to the right. Shift (AQ) right K binary places; sign bit of A is extended to the right, lowest order bits of A shift into highest order bits of Q. Circular shift (A) left K binary places. Circular shift (Q) left K binary places. Circular shift (AQ) left K binary places. t For definition of symbols used, see Instruction List Nomenclature at end of Instruction Listing. © 1962 by Auerbach Corporation and BNA Incorporated 10/62 CDC 1604-A 243:121.102 INSTRUCTION LIST-Contd. §121. OP INSTRUCTION t Index Designator Addr. Octal Code OPERATION Data Transfers 12-----13-----16------ LDA LAC LDQ LQC STA STQ LID b b b b b b b m m m m m m m 20-----21-----52------ LIL b m 53------ 17------ (M)-"""'A Complement of (M)~A (M)~Q Complement of (M)~ Q (A)~M (Q)~M (M38-24~Bb; the upper address of file M replaces the contents of the indicated index register. (M14-0)~ Bb; the lower address field of M replaces the contents of the indicated index register. SID b m 56------ (Bb)~ M38-24; store the contents of the designated index register into the upper address field of M. SIL b m 57------ SAU SAL b b m m 60-----61------ (Bb)--;..M14_0; store the contents of the designated index register into the lower address field of M. (AOO -14)---;' M38 -24 (AOO-14)~ MOO-14 Branching - no indexing AJP AJP AJP AJP AJP AJP AJP AJP QJP QJP QJP QJP QJP QJP QJP QJP SLJ SLJ SLJ SLJ SLJ SLJ SLJ SLJ SLS SLS SLS SLS SLS SLS SLS SLS j j j j j j j j j j j j j j j j j j j j j j j j j j j j J j j j m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m m 220----221----222----223----224----225----226----227 ----230----231----232----233----234----235----236----237----750----751----752----753----754----755----756----757----760----761----762----763----764----765----766----767 - ---- Jump to M if (A) = 0 i.e., positive or negative zero. Jump to M if (A) t- o. Jump to M if (A) is positive. Jump to M if (A) is negative. Return Jump to M if (A) = O. Return Jump to M if (A) t- o. Return Jump to M if (A) is positive. Return Jump to M if (A) is negative. Jump to M if (Q) = O. Jump to M if (Q) t- o. Jump to M if (Q) is positive. Jump'to M if (Q) is negative. Ruturn Jump to M if (Q) = O. Return Jump to M if (Q) t- o. Return Jump to M if (Q) is positive. Return Jump to M if (Q) is negative. Jump to M unconditionally. Jump to M if lever key 1 is set; lever keys are on the console. Jump to M if lever key 2 is set. Jump to M if lever key 3 is set. Return Jump to M: unconditionally. Return Jump to M if lever key 1 is set. Return Jump to M if lever key 2 is set. Return Jump to M if lever key 3 is set. Stop Unconditionally Stop if Stop Key 1 is set} {if the Console Run-Stop Key is Stop if Stop Key 2 is set and in the step condition; otherwise, Stop if Stop Key 3 is set IJump to M. Stop Unconditionally Stop if Stop Key 1 is set} { if the Console Run -Stop Key is Stop if Stop Key 2 is set and in the step condition; otherwise, Stop if Stop Key 3 is set Return Jump to M. t For definition of symbols used, see Instruction List Nomenclature at end of Instruction Listing. 10/62 INSTRUCTION LIST 243:121.103 INSTRUCTION LIST -Contd. § 121. OP INSTRUCTION t Index Designator Addr. OPERATION Octal Code Branching on Index ISK b y 54------ IJP b m 55-----~ if (Bb) = Y; Clear Bb and Exit to the Upper Instruction of the next storage word. if (Bb) :f Y; (BD) + 1~ Bb and Half Exit, advance to the lower instruction. if no Index Register is indicated (b = 0 or 7) then a Half Exit is taken. ISK is normally restricte'fi to the upper instruction. if (B~) :f 0; (BJj) - 1-»- B , Jump to M. if (B ) = 0; Continue. Branching on Storage SSK b m 36------ SSH b m 37------ if (M) is negative; Full Exit. if (M) is positive; Half Exit. Shift (M) circularly left one bit, then if (MOO) = 1; Full Exit if (Moo) = 0; Half Exit. Branching on Storage Search In the following instructions if b = 0, only the word at storage location M is searched. if b = 7, indirect addressing is used to obtain the execution address and the b designator. if (Bb) = 0, no search is made. Search (Bb~words starting with the last address M + (Bb ) -1; reduce (B ) by one, continue search until condition specified is met or search is exhausted. ESQ b m 64------ If (M + (B b ) - 1) = (A), Full Exit. If search is exhausted, Half Exit. Positive zero and negative zero are recognized as the same quantity. THS b m 65------ If (M + (Bb) - 1) > (A), Full Exit. If search is exhausted, Half Exit. Positive zero is greater than negative zero. MEQ b m 66------ If the logical product of (Q) and (M + (Bb) - 1) = (A), Full Exit. If search is exhausted, Half Exit. MTH b m 67 - ----- If the logical product of (Q) and (M + (Bb ) - 1) > (A), Half Exit. Input-Output !NT b m 62------ OUT b m 63------ Transfer (Bb) words from an external equipment into memory, beginning at the last address, M + (Bb) - 1. Transfer to an external equipment (BD) words from memory beginning at the last address, M + (Bb) - 1. External Functions See Instruction List Appendix for the large variety of operations provided. They are specified by considering "m" as three parts: Channel -one octal digit Equip. No -one octal digit Operation -three octal digits and the Index Designator as: Select/Sense -one octal digit t For definition of symbols used, see Instruction List Nomenclature, at end of Instruction Listing. © 1962 by Auerbach Corporation and BNA Incorporated 10/62 CDC 1604-A 243: 121.1 04 INSTRUCTION LIST NOMENCLATURE Symbol A: • Ac~mul.ator • b: . IndEtx Designator. desfgnated index register •• condition designator for jump and stop instructions. unmodified count. tno4nied count; K = k + (Bb). ~m~odified operand address. modified operand address; M = m + (Bb). Unmodified operand. modified operand; Y = Y + (Bb). tontents of a register or storage location. Bb: • j : k: K: m: M: • y: Y: 0: 10/62 j?efprition 243:121.105 INSTRUCTION LIST § INSTRUCTION LIST APPENDIX EXTERNAL FUNCTIONS 121 OP EXF 74 INSTRUCTION Address Index Equip. No. Select/Sense Channel o or 7 o to 1 to 6 7 OPERATION Sub- Opena tion 000 to 777 SELECT INTERNAL INTERRUPTS AND REAL TIME 'CLOCK 74 74 74 0 0 0 0 0 C 0 0 0 OCO OCI 000 74 74 74 74 74 0 0 0 0 0 0 0 0 0 0 0 0 100 101 000 000 070 1 2 0 Interrupt on Channel C inactive. Remove Interrupt Selection on Channel C. Clear all Channel C Selection C = channel = 1 - 6. Interrupt on Arithmetic Faults. Remove Interrupt on Arithmetic Faults. Start Real- Time Clock. Stop Real-Time Clock. Clear Arithmetic Faults. SENSE INTERNAL 74 74 7 7 0 0 0 0 OCO OCI 74 74 7 7 0 0 0 0 lAO lAI CONSOLE EQUIPMENT Exit on Channel C active. Exit on Channel C inactive C = channel = 1 - 6. Exit on Arithmetic Fault A. Exit on no Arithmetic Fault A. A = 1: Divide = 2: Shift = 3: Overflow = 4: Exponent SELECT (Using Console Equipment) Input Select Typewriter for Input, and Interrupt on Carriage Return. Select Typewriter for Input, and No Interrupt on Carriage Return. Select Paper Tape Reader, and No Interrupt on End of Tape. Select Paper Tape Reader, and Set End of Tape Indicator. Select Paper Tape Reader, and Interrupt on End of Tape. 74 0 1 1 140 74 0 1 1 100 74 0 1 1 200 74 0 1 1 210 74 0 1 1 220 74 74 0 0 2 2 1 1 100 110 74 74 74 0 0 0 2 2 2 1 1 1 200 210 240 Output Select Typewriter for Output, Assembly Mode. Select Typewriter for Output, Character Mode. Select Paper Tape Punch, Assembly Mode. Select Paper Tape Punch, Character Mode. Turn Paper Tape Punch Motor Off. 1:jENSE (Using Console EqUipment) 74 74 74 74 74 74 74 74 7 7 7 7 7 7 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 200 201 210 211 140 141 100 101 Input Exit Exit Exit Exit Exit Exit Exit Exit 74 74 7 7 2 2 1 1 200 201 Output Exit on Paper Tape Punch Out of Tape. Exit on Paper Tape Punch Not Out of Tape. © on on on on on on on on Paper Tape Reader, End of Tape. Paper Tape Reader, No End of Tape. Paper Tape Reader in Assembly Mode. Paper Tape Reader in Character Mode. Typewriter in Lower Case. Typewriter in Upper Case. Carriage Return from Typewriter. No Carriage Return from Typewriter. 1962 by Auerbach Corporation and BNA Incorporated 10/62 243: 121.1 06 CDC 1604-A INSTRUCTION LIST APPENDIX-Contd. § 121. OP EXF 74 INSTRUCTION Address Index Select/Sense Channel Equip. No. o or 7 1 to 6 o to 7 OPERATION Sub: Operation 000 tP 7Y7 SELECT (Using CDC 1610-A Control Unit) CDC 161O-A CARD CONTROL UNIT 74 74 74 74 74 74 0 0 0 0 0 0 74 74 74 74 0 0 0 0 I I 1 1 1 1 1 1 4 4 4 4 4 4 001 002 003 005 006 007 2 2 2 2 4 4 4 4 001 002 005 006 Input Select Primary Read Station. Select Secondary Read Station. Select Primary and Secondary Read Stations. Select Primary Read Station and Interrupt. Select Secondary Read Station and Interrupt. Select Primary and Secondary Read Stations and Interrupt. Output Select Printer. Select Punch. Select Printer and Interrupt. Select Punch and Interrupt. SENSE (Using CDC 161O-A Control Unit) 74 74 74 74 7 7 7 7 1 1 1 1 4 4 4 4 002 003 004 005 74 74 74 74 74 74 7 7 7 7 7 7 2 2 2 2 2 2 4 4 4 4 4 4 002 003 004 005 010 Input Exit Exit Exit Exit 74 74 0 0 0 0 0 0 0 7 7 2 2 2 2 2 2 2 2 2 6 6 6 6 6 6 6 6 6 ~ll SELECT (Using CDC 1612 Printer). Output Only Select Printer. Single Space the Printer. Double Space the Printer. Select Format Channel 7. Select Format Channel 8. Clear Monitor Channels 1 - 6. Select Monitor Channel N: N = 1 - 6. OPO 001 OP2 003 ob4 r~ SENSE (Using CDC 1612 Printer) Output Only Exit on Printer Ready. Exit on Printer Not Ready. OpO o~n I 10/62 Reader Ready. Reader Not Ready. 1604 Selected. 1604 Not Selected. Output Exit on Printer Ready. Exit on Printer Not Ready. Exit on Punch Ready. Exit on Punch Not Ready. Exit on 1604 Selected. Exit on 1604 Not Selected. CDC 1612 PRINTER 74 74 74 74 74 74 74 on on on on 243:121.107 INSTRUCTION LIST INSTRUCTION LIST APPENDIX-Contd. § 121. OP EXF 74 INSTRUCTION Address Index Sub-Operation Equip. No. Select/Sense Channel o or 7 o to 7 1 to 6 OPERATION 000 to 777 CDC 1615 MAGNETIC TAPE CONTROL UNIT 74 74 74 74 74 74 74 74 74 74 74 74 74 74 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 2 2 2 2 2 2 2 2 2 2 C C C C C C C C C C C C C C ON! ON2 001 002 003 004 005 006 007 400 401 402 403 404 Output Select Tape N to Write Binary. Select Tape N to Write Coded. Prepare Selected Tape to Write Binary. Prepare Selected Tape to Write Coded. Write End-Of-File Mark on Selected Tape. Select Interrupt When Write Tape Next Ready. Rewind Selected Write Tape. Backspace Selected Write Tape. Rewind-Unload Selected Write Tape. Clear Interrupt Selections on Write Tape. Set Low Density on Selected Write Tape. Set High Density on Selected Write Tape. Skip Bad Spot on Selected Write Tape. Select Interrupt on Next Error. SENSE -- 74 74 74 74 74 74 74 74 74 74 74 74 74 74 74 74 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 C C C C C C C C C C C C C C C C 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 000 001 002 003 004 005 006 007 400 401 402 403 404 405 406 407 74 74 74 74 74 0 0 0 0 0 C C C C C 2 2 2 2 2 ON1 ON2 2Nl 2N2 001 74 0 C 2 002 74 0 C 2 ~01 74 74 74 74 74 74 74 74 74 74 74 74 0 0 0 0 0 0 0 0 0 0 0 0 C C C C C C C C C C C C 2 2 2 2 2 2 2 2 2 2 2 2 202 003 203 004 005 006 206 007 400 401 402 404 © Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit on Ready to Write. on Not Ready to Write. on Write Reply Parity Error. on No Write Reply Parity Error. on Write Reply Length Error. on No Write Reply Length Error. on End-of-Tape Marker. on Not End-of-Tape Marker. on Ready to Select. on Not Ready to Select. on Load Point. on Not Load Point. on Interrupt on Write Tape. on No Interrupt on Write Tape. on Write Program Error. on No Write Program Error. Input Select Tape!:! to Read Binary One Record. Select Tape!:! to Read Coded One Record. Select Tape!:! to Read Binary One File. Select Tape!:! to Read Coded One File. Prepare Selected Tape to Read Binary One Record. Prepare Selected Tape to Read Coded One Record. Prepare Selected Tape to Read Binary One File. Prepare Selected Tape to Read Coded One F.ile. Move Selected Read Tape Forward One Record Search File Mark Forward. Select Interrupt When Read Tape Next Ready. Rewind Selected Read Tape. Backspace Selected Read Tape. Search File Mark Backward. Rewind-Unload Selected Read Tape. Clear Interrupt Selections on Read Tape. Set Low Density on Selected Read Tape. Set High Density on Selected Read Tape. Select Interrupt on Next Error. 1962 by Auerbach Corporation and BNA Incorporated 10/62 243:121.108 CDC 1604-A INSTRUCTION LIST APPENDIX-Contd. § 121. OP EXF 74 INSTRUCTION Index Address Equip. No. Select/Sense Channel o or 7 1 to 6 o to 7 OPERATION Sub-Opemtion 000 to 777 SENSE --- 74 74 74 74 74 74 74 74 74 74 74 74 74 74 74 74 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 C C C C C C C C C C C C C C C C 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 000 001 002 003 004 005 006 007 400 401 402 403 404 405 406 407 CDC 1617 CARD READER 74 74 74 74 74 0 0 0 0 0 C C C C C 4 4 4 4 4 Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit on on on on on on on on on on on on on on on on Ready to Read. Not Ready to Read. Read Parity Error. No Read Parity Error. Read Length Error. No Read Length Error. End of-File Mark. Not End-of-File Mark. Ready To Select. Not Ready To Select. Load Point. Not Load Point. Interrupt on Read Tape. No Interrupt on Read Tape. Read Program Error. No Read Program Error. SELECT 000 001 002 005 006 Channel Clear. Read continuously (Free Run). Read Single Cycle. Read continuously and Translate. Read Single Cycle and Translate. SENSE -- 74 74 74 74 74 74 74 74 74 74 74 74 10/62 7 7 7 7 7 7 7 7 7 7 7 7 C C C C C C C C C C C C 4' 4 4 4 4 4 4 4 4 4 4 4 Q02 003 004 d05 010 011 020 021 040 041 100 ~01 Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit Exit if Ready. if Not Ready. on Reader Normal. on Reader Not Normal. on Input Hopper Empty. on Input Hopper Not Empty. on Stacker Full. on Stacker Not Full. on Amplifier Failure. on No Amplifier Failure. on Feed Failure. on No Feed Failure. 243:131.100 .STANOARD EDP • CDC 1604-A Coding Specimen Machine Coc!e REPORTS CODING SPECIMEN: MACHINE CODE § 131. .1 PROBLEM This program adds one record to the end of magnetic tape 1. It is assumed the end of data on tape is marked by an end-of-file mark. The program advances the tape past the end of file mark, backs up two records, advances one record and then writes the additional record from memory 60000-60177, and then writes a new end-of-file mark. The reason for backing up two after reading end-of-file, then advancing by one, is so that writing shall follow a forward movement. If writing follows a back-up, especially over an end-of-file mark, the spacing between records will not be constant • .2 FLOW CHART l' ~NO-.J ~I---------Yes No NO--® No ~------~--Yes~~~~:r----~ ,---------------------------------------------yes "(I--------Yes ~------------------------------Yes Write Addi.tional Record ~~~~---------Yes Note: "Ready to read" implies "previous function completed." Yes 8 © 1962 by Auerbach Corporation and BNA Incorporated 10/62 243: 131.300 § CflC 1604-A 131. .3 CODING (50000) = EXF SLJ 32010 50000 Is mag. ~pe 1 ready to read? If not re1Ldy, wait. 6 6 Temp + 1 00003 Set B6 to temp. address 1 Store term address in lower (0003) (50001) '" ENI SIL 7 0 (50002) = EXF EXF 0 3 32010 Temp Select Mag. Tape 1 to read Read one word to memory - tape moves one block. (50003) = EXF SLJ 7 0 32010 50003 Sense if ready to read again If not ready, wait. (50004) = EXF SLJ 7 0 32012 50001 Sense if end-of-file read If not end-of-file - read again. (50005) = EXF 0 32011 Move back one record Pass (50006) = EXF SLJ 7 0 32010 50006 Sense, if ready to read If not ready, wait. (50007) = EXF 0 32011 Move back one record. SLJ 7 0 32011 50010 Sense, if ready to read If not ready, wait. Pass (50010) = EXF (50011) = ENI SIL 6 6 Temp + 1 00003 Set B6 to Term Address Store term. add. in 00003. (50012) = EXF EXF 0 3 32010 Temp Select mag. tape 1 Activate read (50013) = EXF 7 0 42012 50013 Sense end-of-file on tape 1 If not ready, wait. SIL 6 6 Rec+200 00004 Set B6 to term address Enter term. add. in 00004. SLJ (50014) = ENI (50015) = EXF EXF 0 4 42010 Rec Select Write Write activate (50016) = EXF SLJ 7 0 42012 50016 Sense end of write indicator If not ready, wait. (50017) = EXF Pass 0 42016 Write end-of-file mark on tape (50020) = EXF SLJ 7 0 42012 50020 Skip if ready Wait (50021) = EXF Pass 0 32015 Rewind (50022) = EXF SLJ 7 0 32010 50022 Sense end of rewind Wait 0 50000 0 Stop (50023) = SLS 0 Reprinted from CDC 1604 Programming Training Manual, pp. G-1 through G- 3. 10/62 243: 132.1 00 • STANDARD EDP _ CDC 1604·A REPORTS Coding Specimen CODAP § CODING SPECIMEN: CODAP 132 . .1 CODING SHEET © 1962 by Auerbach Carporatian and BNA Incorporated 10/62 243:133.100 • II STANDARD EDP CDC 1604·A RlPORTS Coding Specimen FORTRAN·60 CODING SPECIMEN: FORTRAN·60 § 133 . .1 CODING SPECIMEN PROGRAM TEST DIMENSION A(20000),~(20000) COMMON A,R EQU!VA~ENCE (A,R) 1=7 END TfiST. n, 24, 47041 AAA - nonon, RAA - nOOln, WA~ · & AAA01 ~AA· 00006, PAA. 00010 = 30736 WAA 750 00000 :;on 00000 571 RAA01 501 00000 MAIN PROGRAt1 RAtlOD 120 KAAOl 61n RAAOI RAII01 531 RAA07 50n 00000 561 RAAOl 531 RA.AOl RAA02 BAA03 · IAA - 00006, VAA - OU020 PROGRAM PRf::AMLJLE AAAOO • 30736, 8AA. 00002. TAA. 00020. 750 AAAOO ann 00000 } MAP Language CO~~TANTS KUOO KH01 000 00000 000 4704U oon 00000 000 00005 • ASSIGNED VAHIARLES • REASSIGNEU VAHIABLES • NORMAL VARJA8LES • ARRAYS WAAOD WASOO •• 000 OOUOO 000 oouoo oon ono 00000 00000 A B END © 1962 by Auerbach Corporation and BNA Incorporated 12/62 243: 134. 100 • STANDARD EDP • CDC 1604-A Coding Specimen FORTRAN-62 R!PORTS CODING SPECIMEN: FORT.RAN-62 § 134 . •1 CODING SPECIMEN 'START MONITOR ~UN. BEGIN JOH 006 08/31/62 COOP.AAA9-001.S.ANSON. .3.10UO.3.PROGRA~ FIL~TAPE REEL 60S; ---.£:QR-T-R-A-N-.-t.:1-!:;~ROQRAfn.. ILTAp_e_-- ---- . - - . -..- - - - - - - - - - j DIMENSION JJll00) DO 20 1=1.100 JJ I 1)=1 20 CO~TINUE --------c·-3no,----nl~~-~un-----------·· -. -.--.-- ---.------111=IL+9 WRITE OUTPUT TAP. 14.920.IJJII).I=IL.IU) E"D FILE 14 IFIIU-100)30.40.40 ________~4~0~Cg_~tN~~ITS 920 FOR~AT«020» END ,ILTAPE __.-------_._------------_. ------_. IDENT FiL '(Ape-; LWA+l I 00214 ~8LtQl!t.LL---o-0-0-0-0 --,-iLTiiP"'E---------1 E~TERNAL SYMBOLS 00001 GOUT ERROR 00U02 00003 INGOUT r.0004 RANGE ,WA 00000 EN~~~~r-·------_--- 0'0 0 05 . r. 0 0 06 77777 ~u ~l 000 I.) 00" U 5U 51 7S 2 00026+ 75 4 ~000U4 50 0 OoOOu 50 10 75 75 000011 00041+ + X00005 X00002 n 00000 0 00210+ + 0 77~3,1 0 00035+ u0007+ 3 0 00035+ 0 '1000 0 00U30+ 00031+ ~i) -ifou32+ l2 11 ENTRY F!LTAPE SLJ 0 00001 000l~+ o0 o2T+--Y-~---- XooOO'2 QUITS uOOuu+ 75 ; 00025+ I l'Ou33+ 'I.LTAPE •• ~2 22 75 00034+ I, ,0 10uB) IN! SLJ • ~TJ + ~TJ ENA RTJ RTJ 2 0 1 (OOA) ENDGOUT ERROR ri --.14 0 WREOF ERROR LOA .- -·o"'Ti./ INA AJP AJP SLJ 0 Z M -100 (40) 13U) (40) -----'-~. 110010- IJG212+ n0212. aoou. i': n 011+ 00210+ 00012 ... 10 04 00013+ 75 50 00014+ o0 ul'5~ - 7':> 50 ~3 51 00016. 10 00017. 20 15 11 UOO?o. ,,0021. 00022+ -- 00-023+ 00024+ 22 50 10 61 75 50 uo oli 75 50 OC U41+ + 001140+ XDOOQ3 II 0 0 IJ!! 4 XOOO02 00000 0 2 00212+ + 2 77776 2 00001 10UA) 0 00207+ 0 1/ U21-;+ 0 77776. 2 001126+ 0 00000 2 00043+ 100 I 0 00023. 4 XOUOOl. ell) 0 OUOOII 0 00042+ 0 77777 • ~1]0002 OOOOU IN.i1 STA IL LOA IL INA 9 STA 0 I~ _._. __JL.lL ___....!._4___ ENA 0 .14 ENQ 0 F,920 RTJ -- -- INGOU-r-- Uou43+ n0207+ 00210+ 00211. JJ I III K (1) ~0212+ ~.?U IL ... ______ _ T '.21 00001 00002 00003 L19 LIB LIB 00004 L 1t:-----2IL--- IN! ENA STA sue I~L_ AJP 2-1 2 +1 0 I 0 IU [I -1 -p--(00BI.1 JJ ENA SAL RTJ C(l)+l GOUT ZRn ZRn •• ~TJ Ll9 r'-o 0 05 RTJ .DOqO~ NO ass ess ass KSS ass ess LIe ___ . OOii'u-n--- DEFINEU NO llNOEI'-fNED SYMaOLS NULLS (201 LIB ENO 100 1 1 1 1 1 ---- ----.GOUT ERROR INGOUT END GOUT WRcOF'-QUITS j:' I LTA'P-E--- nOU~LY .K.I1I .• ._--_._--- ._------------- --._------_.!-. ·0 ERROR © 1962 by Auerbach "0 MINUTES. 21 SE'CONOS. E.NO JaR ryo~,. Corporation and BNA Incorporated 12/62 243:141.100 • II STANMRD EDP CDC 1604-A Data Code Table 1612 Printer REPORTS DATA CODE TABLE NO.1 § · 22 141. Character Structure .1 USE OF CODE: • • • . CDC 1612 Printer, internal. .2 STRUCTURE OF CODE • 222 Less significant pattern: • . . • • • • 3 bits: 4, 2 and 1 • . 21 Character Size: • • • • 6 bits. • 23 LESS SIGNIFICANT PATTERN .221 More significant pattern: . • • • • • • 3 bits: 4, 2 and 1. Character Codes MORE SIGNIFICANT PATTERN 0 1 2 3 4 5 6 7 0 : 8 Blank Y - Q + H 1 1 9 / z J R A I 2 2 ¢ S ] K % B < 3 3 = T . L $ C 4 4 of U ( M * D ) 5 5 :5 ---il>- N t E ~ 6 6 . V W 0 ~ F '1 7 7 [ X P > G ; NOTE: == ~ Characters~, %, and $ appear for business application and are replaced respectively by /\ • v. and.., for scientific application. © 1962 by Auerbach Corporation and BNA Incor~rated 10/62 243: 142. 100 .srANDA.. II ED]? CDC 1604-A ,[PO,rs Data Code Table Typewriter DATA CODE TABLE NO.2 § • 22 142. •1 USE OF CODE: • • • • Input-Output Typewriter. .2 STRUCTURE OF CODE .21 Character Size: 6 bits. LESS SIGNIFICANT PATTERN 0 1 2 0 1 T L Z 2 3 4 5 6 7 • 221 More significant pattern: • • • 3 bits: 4, 2 and 1. .222 Less significant pattern: • • • 3 bits: 4, 2 and 1. · 23 Character Codes MORE SIGNIFICANT PA'ITERN UPPER CASE LOWERCASE 3 4 5 6 7 0 1 2 3 4 5 A W E R 0 G Space I H P N C M V Character Structure D , - J i B S Y F U Q : Tab @ $ ¢ t 1 - r g i p c v 0 '1 CR " 0 ) K ( Upper ILower X & Back Space # % * Space h n m Case Case © 1962 by Auerbach Corporation and BNA Incorporated e z a w , - d j b B s y u / q cr f k 9 x ; Tab + 6 7 7 2 Back Space 4 6 • 3 ¢ 5 1 Upper Lower Case Case 10/62 243:143.100 • STANOARD EDP _ REPORlS CDC 1604-A Data Code Table Magnetic Tape DATA CODE TABLE NO.3 § .22 143. .1 USE OF CODE: .221 More signficant pattern: • • magnetic tape BCD internal. .2 STRUCTURE CODE .21 Character Size: . 222 Less significant pattern: . .23 . 6 bits. LESS SIGNIFICANT PATTERN • 3 bits: 4, 2 and 1. . . 3 bits: 4, 2 and 1. Character Codes MORE SIGNIFICANT PATTERN a a 1 Character Structure 1 1 2 3 4 5 6 7 8 (blank) Y - Q & H 9 / z J R A I K (minus) B (plus) a 2 2 0 S record mark 3 3 # T , L $ C 4 4 @ U % M * D 5 5 V N E 6 6 W 0 F 7 7 X P G © tape mark 1962 by Auerbach Corporation and BNA Incorporated a (period) ):l group mark 10/62 243:144.100 • II STAnDARD EDP CDC 1604-A Data Code Table Card Code, Internal REPORTS DATA CODE TABLE NO.4 § 144. · 22 Character Structure .1 USE OF CODE: .2 STRUCTURE OF CODE · 222 Less significant pattern: • • • • • • 3 bits: 4, 2 and 1. .21 Character Size: • . • 6 bits. · 23 punched card BCD inputoutput, internal LESS SIGNIFICANT PATTERN .221 More significant pattern: • • • • • • 3 bits: 4, 2 and 1. Character Codes MORE SIGNIFICANT PATTERN 0 0 1 2 3 4 5 6 7 8 BLANK Y - Q + H 1 1 9 / z J R A I 2 2 ¢ S ] K % B < 3 3 = T , L $ C 4 4 'f U ( M * D ) 5 5 5 V N t E ~ w --- 0 t F ? X ,.....,. p > G ; 6 6 7 7 © I [ -?>o 1962 by Auerbach Corporation and BNA Incorporated 10/62 243: 145.1 00 • II STANDARD EDP CDC 1604-A Data Code Table Card Code, External RfPORTS DATA CODE TABLE NO.5 §l45. .1 .23 USE OF CODE: . punched card BCD inputoutput, external. .2 STRUCTURE OF CODE .21 Character Size:. . . . . 1 column. Character Codes OVER PUNCH UNDERPUNCH None None 12 11 + - 0 12 11 0 0 1 1 A J / 2 2 B K S 3 3 C L T 4 4 D M U 5 5 E N V 6 6 F 0 W 7 7 G P X 8 8 H Q y 9 9 I R Z < % ] $ . 8-2 10/62 © 8-3 = 8-4 'f ) * ( 8-5 :::: ~ t -'J>o 8-6 I ? ~ - 8-7 [ ; > ""'-' 1962 by Auerbach Corporation and BNA Incorporated 243: 146.100 CDC 1604-A Data Code Table Flexowriter OAT A CODE TABLE NO. 6 § 146. .1 · 22 USE OF CODE: • • • • Flexowriter . Character Structure · 221 More significant pattern: • . . 3 bits: 4, 2, and 1. • • • 3 bits: 4, 2, and 1. .2 STRUCTURE OF CODE • 222 Less significant pattern: .21 Character Size:. • • • 6 bits. .23 LESS SIGNIFICANT PATTERN 0 1 2 3 4 5 6 7 0 Tape Feed T Color Shift 0 Space H N M 1 2 Character Codes MORE SIGNIFICANT PATTERN UPPER CASE LOWERCASE 3 4 5 6 7 0 1 2 3 5 4 : E A L Z W R D J - G I P C V B S Y F X 8 U Stop Q K 9 CR © • + UC 7 Tab Back Space 4 ( 0 LC 3 5 2 e a 1 z w iColor r Shift 0 g 1 Space i p h n c Delete m v d j b s 8 u Stop V Q CR f k , x 9 UC 6 trape Feed t 1962 by Auerbach Corporation and BNA Incorporated ; 6 7 7 2 Tab Back Soace 4 - / ) 3 0 LC 5 6 1 Delete 10/62 243: 1S1.1 00 .STINGARG EDP _ RE1'QRTS CDC 1604-A P. O. Facilities PROBLEM ORI ENTED FACILITIES § 151. ·1 UTILITY ROUTINES • 11 Simulators of Other Computers .16 File Maintenance: . • • only routines for specific installations are available • .17 Other Aritlunetic Functions IBM 650 Reference: 02 NBSB. Date available: • 1961. Description The routine simulates an IBM 650 computer containing a 2,000 word drum, index registers and floating point. The simulator operates on a CDC 1604 with an IBM 407, 088 and 523 unit. Double Precision, Floating Point Complex Numbers, Floating Point • 13 - x 500 500 1000 173.6 173.6 353.6 TIME SPACE (JJ. sec) Simulation by Other Computers CDC 160-A: • . • • •• + Mathematical Functions (Representative cases, all floating point) CDC 1604-A:. . . • • • by a s:witch on 1604-A console. • 12 ( fJ.. sec. ) TIME INTERFOR system simulates 20 of the 62 operations, and includes other facilities. Sine 964 68 ERROR (Max) 2.1 x 10- 11 2.1 x 10- 11 Cos 964 68 Tan 1129 53 2.4 x 10- 11 115 8.7 x 10- 11 8.7 x 10- 11 Data Sorting and Merging Arc Sine 1610 Reference: .• Record size: . Block size: • Key size: ••• Arc Cos 1085 Arc Tan 985 71 8.7 x 10- 11 Exponential 540 32 8.7 x 10- 11 Natural log 677 45 8.7 x 10- 11 M4 CODA KSM. 80 or 120 characters. 1 record per block. any number of keys of any length. any number of tape reels. 4 upwards. 1961. File size: •• Number of tapes: Date available: . . Description The routine provides data editing facilities and operates only on BCD data. No other sorting routines are listed in the July, 1962 CO-OP Index. .14 Report Writing: . . • • none. • 15 Data Transcription Polynomial Evaluation TIME (I" sec) Hermite 130 + 165 (N-1) SPACE 24 Laguerre 130 + 238 (N-1) 24 Legendre 123 + 247 (N-1) 25 Other Hypergeometric Functions Convert Symbolic Magnetic-Tape-to-Paper-Tape Reference: • • • • M 2 CODA MAGPT. Date available: . • •• 1961. Description Converts 80 or 120 character BCD magnetic tape to Flexowriter tape. Performance limited by Flexowriter output. © .2 Space: 2,491Iocations, timing unknown. PROBLEM ORIENTED LANGUAGES PERT: . • . • • • • . Linear Programming Package: • • • • • • 1962 by Auerbach Corporation and BNA Incorporated RIP. RIP. 10/62 243: 162. 100 • STANDARD ED:!? • CDC 1604-A REPORTS Process Oriented Language FORTRAN-60 PROCESS ORIENTED LANGUAGE: FORTRAN-60 § 162. 14 .1 GENERAL · 11 Identity: FORTRAN- 60. · 12 Origin:. Computer Division, Control Data Corporation. · 13 Reference:....... Control Data Publications 087A and 027A. · 14 Description Description (Contd. ) Restrictions (Contd.) (5) All allocation statements (DIMENSION, EQUIVALENCE, and COMMON) must precede the first executable statement in a source program. (6) The CHAIN feature, which facilitates segmentation of programs too large to fit into core storage, has not been implemented. (7) Independently-compiled subprograms cannot be linked together at execution time. FORTRAN-60 for the 1604 is a restricted version of the FORTRAN II language as implemented for the IBM 709/7090. Two newer, more powerful versions of the FORTRAN language are available for the 1604. FORTRAN- 62 has been released, and the FORTRAN63 translator is in field test status. The FORTRAN60 system, however, is still in use; it provides faster compiling speeds in the compile-and-execute mode and permits intermixed FORTRAN and symbolic statements. Furthermore, certain language incompatibilities (summarized in Section :163.14) necessitate manual conversions before programs coded in FORTRAN-60 can be compiled by the newer CDC FORTRAN systems. A curious feature of FORTRAN- 60 is the permanent assignment of the six machine index registers to the specific integer variables named I, J, K, L, M, and N. Routines using these six variables as subscripts and loop indices can, therefore, be compiled and executed rapidly, whereas severe inefficiencies will result if any other integer variables are used as subscripts or loop indices. The names I, J, K, L, M, and N may not be assigned to subscripted variables. Other restrictions and extensions of the FORTRAN60 language relative to IBM 709/7090 FORTRAN II are summarized below. Re strictions : (1) Double preCision and complex arithmetic are not permitted. (2) It is not possible to test for arithmetic errors; IF ACCUMULATOR OVERFLOW, IF QUOTIENT OVERFLOW, and IF DIVIDE CHECK result in unconditional branches to the second statement listed. (3) The 1604 has only three sense switches. If more are reqUired, a SWITCH routine is used to set or clear pseudo switches in six core storage locations. (4) The following statements have not been implemented: FREQUENCY, END FILE, READ DRUM, WRITE DRUM. © Extensions: (1) Names may be up to eight characters in length. (2) The following number ranges can be handled: Floating point:. 10- 308 to 10+ 308 . Integers: . . •. _247 to.+247 (except 16,383 is maximum value for variables I, J, K, L, M, and N, which are stored in index registers). Boolean: . . . . 16 octal digits (48 bits). (3) No parenthesized statement number list is required in an assigned GO TO statement. .15 Publication Date:. . . . November, 1960. .2 PROGRAM STRUCTURE .21 Divisions: . . . . • . . one division, composed of the following types of statements. Procedure statements:. algebraic formulae. comparisons and jumps. input and output. Data statements: . . . . FORMAT: describes the layout, size, scaling, and code of input-output data. EQUIVALENCE: used to cause two variables to have a common location or to specify synonyms. COMMON: used to cause a name to be common to more than one segment rather than local to each. DIMENSION: describes the elements in each dimension of an array or set of arrays. 1962 by Auerbach Corporation and BNA Incorporated 10/62 243:162.220 § CDC 1604-A .252 Subscripts (Contd. ) 162. .22 Procedure Entities Program: .. Subroutine: . Function: • Statement: . .23 Data Entities Arrays: Item: .• Hollerith item: • Alphameric: . • .24 subroutines and functions. statements. statements. characters; blanks .are ignored. all variables. floating point variable or constant. integer variable or constant. Boolean variable or constant. Hollerith item. alphameric item. alphameric item that can only be used for output. alphameric item that can only be input during a run; it can be used for output, or as a format statement. Names .241 Simple name formation Alphabet:. . .. Size: ...• Avoid key words:. Formation rule: . 242 Designators Procedures Statement label: Function label: Subroutine label: Data Integer variables: Floating point variables: . Equipment Card: • . . . Magnetic tap~: Printer: • . . Index registers: Comments: • . . • Translator control: . 25 .26 Number of Names .261 All entities: . . . . . . no practical limit. .262 Procedures Numbered statements:} Subro~tines: • . . . . all inte.r-rel~t~d; no FunctIOns: . • . . . . practicaillmlts. Others: . . • • . . . . .263 Data Files: • . . . . . no limit. Record formats: no practical limit. Items: • . . no practical limit . . 264 Equipment 48. Tape units: • Card readers: 1. 1. Card punches: Printers: . . . 1. .27 Region of Meaning of Names: . . • • . • . all names are local to the program, subroutine, or function in which they are defined unless specified in a COMMON statement. unsigned integer. same as variable being defined. no designator. .3 DATA DESCRIPTION FACILITIES any other initial letter. .31 Methods of Direct Data Description implied by verbs READ, PUNCH. use key word TAPE. implied by verb PRINT. variable names I, J, K, L, M, N. C in col. I of statement. key words EQUIVALENCE, COMMON. .311 .312 ".313 .314 .;315 .316 .317 .318 .319 Concise item picture: List by kind: • . • . . Qualify by adjective: . Qualify by phrase: . Qualify by code: . . Hierarchy by list: . Level by indenting: Level by coding: . Others Array size:. . . Four-digit integer:. Four-digit integers,S: Floating point items:. FORMAT statement only. no. no. no. yes, first letter of name. no. no. no. .32 Files and Reels: . . own coding. .33 Records and Blocks initial I, J, K, L, M, N. Structure of Data Names . 251 Qualified names: •.• .252 Subscripts Number per item: Applicable to: Class may be· Special index v.ariable: Any variable: . Literal: . . . Expression: . . 10/62 A to Z, a to 9. I to 8 char. no. first char must be letter. do not use final F if name is more than 3 char long . Form may be Integer only: yes. no. Signed: • . . Truncated fraction: . no. Rounded fraction: . no. • 253 Synonyms Preset: • . . . . . . EQUIVALENCE statement causes sharing of storage locations. Dynamically set: . no. none. a to 3. all variables. no. only integers. yes. any integer expression. .331 Variable record size: . 332 Variable block size: . .333 Record size range: DIMENSION (4, 7). FORMAT (14). FORMAT (514) . FORMAT (F8. 3, Ela.4) for +999.999 and +. aaaOE+9 dynamic. fixed. 1 to N blocks. 243: 162.334 PROCESS ORIENTED LANGUAGE: FORTRAN·60 § 162. .334 Block size READ TAPE, WRITE TAPE: . • • . . . . READ INPUT TAPE, WRITE OUTPUT TAPE: . . ' . . • · 335 . 336 • 337 .338 · 339 · 34 .36 54 words (binary format). 120 characters (BCD format). READ, PUNCH: 80 columns. 120 characters. PRINT: . • • . . Choice of record size: . READ, WRITE statement. fixed for each input-output Choice of block size: statement type. own coding. Sequence control: •• In-out error control: automatic. none; 1 or more full blocks Blocking control: . per logical record. .4 OPERATION REPERTOIRE .41 Formulae +: *. / : **: . ABSF ( )* : INTF ( )* : MODF (A, BH :. • . MAXOF (A, ..• )*:. MAX1F (A, ... H: . MINOF (A, ... )*: MIN1F (A, .•• H : DIMF (A, BH: . SIGNF (A, B)* : . FLOATF ( ) : XFlXF ( ) : LOGF ( ): LOGlOF ( ) : SINF ( ) : ASINF ( ): COSF ( ) : ACOSF ( .): EXPF ( ) : SQRTF ( ) : ATANF ( ) : TANHF ( ) : SINH ( ) : COSH ( ): .. . . ±247 . none. 10- 308 to 10+ 308 . 120 characters. 16 octal digits. yes. optional. same as constants. own coding; e. g., TEN = 10.0. . 354 Conditional variables:. computed GO TO. © addition, also unary. subtraction, also unary . multiplication. division. exponentiation. is set equal to. absolute value. entire. remainder A .;. B. max value; fixed argument • max value; floating argument. min value; fixed argument • min value; floating argument. diminish A by B. transfer sign of A to B. float an integer. fix a floating pointvariable. natural log. common log. sine. arc sine. cosine. arc cosine. exponential. square root. arctangent. hyperbolic tangent. hyperbolic sine. hyperbolic cosine. * denotes function may have prefix X to denote fixed point result • . 412 Operands allowed Classes: . . . . Mixed scaling: . Mixed classes: . Data Values .351 Constants Possible sizes Integer: •.• Fixed point: . Floating point: Alphameric: Boolean: . . . . Subscriptable: . Sign provision: . . 352 Literals: . . .. 353 E'igurative~: . . . .361 Duplicate format: . • . by multiple references to a single FORMAT statement. .362 Re-definition: . • COMMON statement. EQUIVALENCE statement. .363 Table description Subscription: . . mandatory, in DIMENSION statement. Multi - subscri pts: 1 to 3. Level of item: . . variables . .364 Other subscriptable entities: . . . • • tape units . .411 Operator List Data Items .341 Designation of class: by name. • 342 Possible classes Integer: • • . . yes. Fixed point:. • no. Floating point: yes. Logical: • . . . yes. Alphameric: . yes. · 343 Choice of external radix:. . . . . . . FORMAT statement. • 344 Possible external radices Decimal: . • • . . . yes. Octal:. . • • . • . . yes. • 345 Internal justification: alpha automatic left justified. integers automatic right justified. · 346 Choice of external code: FORMAT statement and READ, WRITE statement. .347 Possible external codes Decimal: " yes. Octal: • . . . yes. Hollerith:. . yes. Alphameric: yes. · 348 Internal item size Variable size: fixed. Designation: . . none. Range Fixed point numeric: fixed, 1 word. Floating point numeric: . fixed, 1 word. Alphameric: fixed, 1 word of up to 8 characters. · 349 Sign provision: • optional. · 35 Special Description Facilities Mixed radices: • Literals: . . . . .413 Statement structure Parentheses a - b - c means: a + b x c means: a t: b.;. c means: a b means: . . . Size limit: . Multi-results: 1962 by Auerbach Corporation and BNA Incorporated numeric only. yes. only in exponentiation and functions. no. yes. (a-b)-c. a + (b x c). (a .;. b) .;. c. illegal; parentheses must be used 660 char • no. 10/62 243:162.414 § CDC 1604-A 162. .45 .414 Rounding of results: . . truncation of integers at each step in expression. Floating .415 Special cases Fixed X= -X. x = -x: . . . K= -K x = x + 1: •• K=K+1 X=X+l. x = 4.7 y; ••• K = 47*K/1O X=4.7*Y. x = 5x107 +y2: 50000000+ L**2 X= 5.E7+Y**2. x= X = ABSF(Y). K = XABSF(L) x = entire (3.5): . . . . K = XINTF(L) X = INTF(Y). X =(-B + SQRTF(B*B-4. 0 .416 Typical examples: .. *A *C»/(2. O*A). Step back a record: Set restart point: Restart: . . . . Start new reel: . Start new block: ,y,: ... .42 Operations on Arrays .421 Matrix operations: . . 422 Logical operations Sizes of operands: AND: . • . . . Inclusive OR: . Exclusive OR: NOT: . . . . Designation: .423 Scanning:. . . .43 Other Computation: none. 48 bits. * + none. B in col. 1 of each Boolean statement. none. Data Movement and Format .441 .442 . 443 . 444 . 445 Data copy example: Levels possible: . . Multiple results:. . Missing operands: . Size of operands Exact match: . . Alignment rule Numbers: . Alpha: . . . Filler rule Numbers: . Alpha: . . . Truncating rule Numbers: .. . Alpha: . . . . . Variable size destination: .446 Editing possible Change class: Change radix: Insert editing symbols Actual point: . . . Suppress zeroes: . Insert: .. . Float: . . . . . . . . 448 Special moves: . . . • .449 Character manipUlation: Search on key: • Rewind: Unload: • . • • . .46 .47 Operating Communication Object Program Errors Error Discovery Overflow: In-out: Invalid data: Special Actions none. automatic format checks .5 PROCEDURE SEQUENCE CONTROL .51 Jumps ./ typed messages. y=X. items. none. not possible . .511 Destinations allowed: . 512 Unconditional jump: .513 Switch: . . . . • . implied, except for alpha or input-output. . 514 Setting a switch: . .515 Switch on data:. . right justified or normalized. left justified. · 52 zeros. blanks. truncate at left. truncate at right. .523 Conditional relations: . no. yes. yes. automatic. automatic. automatic point. - sign only. none. none. statement . GO TO N. GO TO M, or GO TO M, (35, 47,18) . ASSIGN 35 TO M. GO TO (35, 47, 18) I. Conditional Procedures .521 Designators Condition: Procedure: . 522 Simple conditions: . . 524 Variable conditions: . . . 525 Compound conditionals: • 528 Typical examples: . . . .53 .45 BACKSPACE. none. none. own coding. implied in each input-output statement. none. REWIND. none. .461 Log of progress: . . . . PRINT uses on-line printer • . 462 Messages to operator: . same as log (error messages are.automatically typed on console typewriter) • PAUSE and type decimal · 463 Offer options: integer. PRINT message .and PAUSE. · 464 Accept option: . . . . . IF SENSE SWITCH n. symbolic machine instructions may be inserted in a FORTRAN source program. .44 File Manipulation (Contd. ) IF. implied. expression or variable versus zero. IF (A) n1, n2, n3: If value of expression A is less than, equal to, or greater than zero, respectively, go to statement n1, n2, or n3. expression always against zero . no. IF (X**2. 0 - 3.0) 29, 37, 18; go to 29, 37, or 18 if x 2 -3 is respectively less than, equal to, or greater than zero. Subroutines File Manipulation own coding. Open: . . . . . . . own coding. Close: . . . . . . Advance to next record: READ, WRITE, PUNCH, PRINT. 10/62 .531 Designation Single statement:. . Set of statements First: . Last: . ..... not possible. SUBROUTINE . END. PROCESS ORIENTED LANGUAGE: FORTRAN-60 § 162. .532 Possible subroutines: · 533 Use in -line in program: · 534 Mechanism Cue with parameters: Number of parameters: Cue without parameters: Formal return: . Alternative return: . . 535 Names Parameter call by value: • Parameter call by name: . Non-local names: Local names: • Preserved own variables: . .536 Nesting limit: .537 Automatic recursion allowed: .. 54 . 542 Level of procedure: · 543 Mechanism Cue: Formal return: . .544 Names Parameter call by value: . Par~meter call by name: . Non-local names: Local names: . Preserved own variables: • · 55 • 56 Operand Definition by Procedure: LIBRARY FACILITIES .71 Identity: .. CALL XXX (X, Y, Z). · 72 Kinds of Libraries maximum of 64. .721 Fixed master: .722 Expandable master,: no. yes. CALL XXX. RETURN at least once. none. .73 Storage Form: magnetic tape; 54-word blocks in "tag binary" format • none. .74 yes. use COMMON. all. · 75 Varieties of Contents:. subroutines. functions. service routines. Mechanism all. no limit. no. .562 Control by count: · 563 Control by step Parameter Special index: . Any variable: . Step: Criteria: Multiple parameters: · 564 Control by condition: • 565 Control by list: .566 Nesting limit: .567 Jump out allowed: . 568 Control variable exit status: EXTENSION OF THE LANGUAGE: ~ FORTRAN-60 Reference Library. .751 Insertion of new item:. separate run, using FORTLIB or MAPTLIB Compiler. .752 Language of new item:. FORTRAN or MAP, a regional assembly language specific to FORTRAN-60. .753 Method of call: . named in procedures . . 76 Types of Routines same as set. FUNCTION. END. any number of statements . by name in expression. RETURN. .761 Open routines exist:. no. .762 Closed routines exist:. yes. .763 Open-closed is variable: no. .8 TRANSLATOR CONTROL · 81 Transfer to Another Language: none. yes. use COMMON. all. .82 none. .83 none. .84 current place to named end; e.g., D0173I=1, N, 2. .85 none. no. integer only. positive integers. greater than. no. no. no. no limit. yes • none. COMMON. EQUIVALENCE. Translator Environment: • • no . Target Computer Environment: . no. Program Documentation Control: no. .9 TARGET COMPUTER ALLOCATION CONTROL . 91 Choice of Storage Level: no . .92 Address Allocation: none. .93 Arrangement of Items in Words in Unpacked Form: standard for numerics. available. .94 can write new function in library. .95 © strings of symbolic machine instructions, separated by commas, can be inserted in the source program. Optimizing Information Statements .821 Process usage statements: • .822 Data usage statements: all. Loop Control • 561 Designation of loop Single procedure: First and last procedures: . ·6 .7 any number of statements. no. Function Definition by Procedure .541 Designation Single statement: . Set of statements First: . Last: 243: 162.532 Assignment of InputOutput Devices: Input-Output Areas: 1962 by Auerbach Corporation and BNA Incorporated specified in input-output statements. automatic. 10/62 243: 163.100 • STANDARD EDP _ REPORTS CDC 1604-A Process Oriented Language FORTRAN-62 PROCESS ORIENTED LANGUAGE: FORTRAN-62 § 163 . 14 .1 GENERAL · 11 Identity: FORTRAN-62. · 12 Origin:. Computer Division, Control Data Corporation. . 13 Reference:....... Control Data Publications No. 506 and PSB-AS06621. · 14 Description The main advantages of the FORTRAN-62 system over FORTRAN-60 are the more efficient object programs it produces and its ability to link subroutines compiled independently. Language extensions include buffered input-output, division of the COMMON data area into named blocks, and more flexible subscripting. As in FORTRAN-60, there are no facilities for complex or double precision arithmetic or for the detection of arithmetic errors. The incompatibilities between the FORTRAN-60 and FORTRAN-62 languages that must be considered in source program conversions can be summarized as follows: (1) FORTRAN-62 treats Hollerith constants or literals as floating point mode and identifies them by floating point variable names; FORTRAN-60 treats them as fixed point mode. (2) FORTRAN-62 allows symbolic coding (in CODAP-l) to appear only as a subroutine; FORTRAN- 60 permits intermixed symbolic and FORTRAN statements or symbolic subroutines. (3) There are certain differences in the naming conventions for functions. (4) The COMMON and EQUIVALENCE statements are implemented differently; this can lead to differences in the correspondence of shared variables between two or more subprograms. (5) FORTRAN-62 treats all integer variables as modulo 247 _1; in FORTRAN-60, the variables named I through N are treated as modulo 16,383 because they are stored in the index registers. (6) There are differences in implementation of the E conversion in the FORMAT statement. Description (Contd. ) (9) FORTRAN-62 places certain restrictions on names to avoid conflicts with the library program names. (10) The different operating systems require the control cards for FORTRAN- 62 to be totally different from those for the FORTRAN-60 system . (11) The FORTRAN-60 service routine library is not available to the FORTRAN-62 system; other service routines are available in the CO-OP Monitor. In FORTRAN-62, magnetic tape input and/or output can be overlapped with internal computation by the use of BUFFER IN and BUFFER OUT statements. Each BUFFER statement causes one block of data to be read into or written from sequential core storage locations, in either binary or BCD format. ENCODE and DECODE statements facilitate the internal packing, unpacking, and format control of buffered input and output data. ENCODE (i, n, v) L causes the variables in list L to be converted according to FORMAT statement n and stored in array v as a unit record i characters long ready for output; DECODE (i, n, v) L performs the complementary function of unpacking input data. The statement IF (UNIT, i) permits checking of a buffered input-output operation for completion, end-of-file condition, and parity error; it should always appear before any statement referencing a variable involved in a buffered transfer. When the standard FORTRAN input-output statements are executed, the central processor is occupied throughout the operation with format conversions, so no simultaneity is possible. The buffered input-output facility of FORTRAN-62 permits the programmer to take advantage of most of the hardware facilities for simultaneous operations, and it can significantly decrease the execution time for routines where the ratio of input-output to computation is high. Translation and execution of programs written in the FORTRAN-62 language are controlled by the CO-OP Monitor System. Restrictions and extensions of the FORTRAN-62 language relative to IDM 709/7090 FORTRAN II are summarized below. Extensions (4) through (9) represent the main improvements over CDC's FORTRAN-60 language. (7) There are minor implementation differences in the END, STOP, PAUSE, and SENSE SWITCH statements. Restrictions: (8) Differences in the required source program order may necessitate some shuffling of the source cards. © (1) Double precision and complex arithmetic are not permitted. 1962 by Auerbach Corporatian and BNA Incorporated 10/62 243: 163.140 § 163 CDC 1604-A .14 .14 Description (Contd. ) Extensions (Contd. ) (9) The COMMON data storage area can be divided into numbered or labeled blocks; this facilitates the transfer of information between subprograms. Restrictions (Contd. ) (2) It is not possible to test for arithmetic overflow; IF ACCUMULATOR OVERFLOW, IF QUOTIENT OVERFLOW, and IF DIVIDE CHECK result in unconditional branches to the second statement listed. (3) IF SENSE SWITCH and IF SENSE LIGHT test the status of specific core storage locations. The monitor system must be used to alter the settings of the pseudo sense switches. . IS Publication Date:. . . . June, 1962. .2 PROGRAM STRUCTURE .21 Divisions: . . . . . . . one division, composed of the following types of statements. Procedure statements:. algebraic formulae. comparisons and jumps. input and output. (4) The following statements have not been implemented: FREQUENCY, READ DRUM, WRITE DRUM. (5) All allocation statements (DIMENSION, COMMON, and EQUIVALENCE) must precede the first executable statement in a source program. (6) The CHAIN feature, which facilitates segmentation of programs too large to fit into core storage,. has not been implemented. (The CO-OP Monitor, however, includes an overlay system that can be used by programs in any source language.) (7) Symbolic coding can be incorporated only in the form of separate subroutines called by the FORTRAN program. Extensions: (1) Names may be up to 8 characters in length. . 22 (2) The following number ranges can be handled: Floating point: . 10- 308 to 10+ 308 Integer: . . . . . -247 to +247 Boolean: • . • . . 16 octal digits (48 bits). (3) No parenthesized statement number list is required in an assigned GO TO statement. Description (Contd.) Data statements:. . . . FORMAT: describes the layout, size, scaling, and code of input-output data. EQUIVALENCE: used to cause two variables to have a common location or to specify synonyms. COMMON: used to cause a name to be common to more than one segment rather than local to each. DIMENSION: describes the elements in each dimension of an array or set of arrays. EXTERNAL: declares the following identifiers to be function names. Procedure Entities Program: . . Subroutine: . Function: . Statement: . .23 Data Entities Arrays: Item: . . (4) Subscripts may be integer constants, integer variables, integer functions, or any fixed point arithmetic expressions. (5) BUFFER IN and BUFFER OUT initiate the buf- fered reading or writing of one block on magnetic tape from sequential core storage locations' beginning and ending with specified variables. Hollerith item: . Alphameric: . . (6) The statements IF (UNIT), IF (EOF), and IF (IOCHECK) permit tests for completion of buffered input-output operations, for end-of-file conditions, and f9r parity errors. .24 (7) ENCODE and DECODE control code or radix conversions and packing into and unpacking from sequentiallotations of a list of variables (usually those involved in a buffered input or output operation). (8) The statements READ and WRITE may designate any available input or output device. 10/62 subroutines and functions. statements. statements. characters; blanks are ignored. all variables. integer variable or constant. floating point variable or constant. Boolean variable or constant. Hollerith item. alphameric item. alphameric item that can only be used for output. alphameric item that can only be input during a run; it can be used for output, or as a format statement. Names .241 Simple name formation Alphabet: . • • . . Size: . . . . . . . Avoid.key words:. Formation rule: A to Z, 0 to 9. I to 8 char. no. first char must be letter. do not use final F if name is more than 3 char long. 243: 163.242 PROCESS ORIENTED LANGUAGE: FORTRAN-62 § 163. .242 Designators Procedures Statement label: Function label: . Subroutine label: Data Integer variables: Floating point variables: Equipment Card: . • . Magnetic tape: Printer: . . • . Comments: . . . Translator control: . 25 initial I, J, K, L, M, N. any other initial letter. implied by verbs READ, PUNCH. use key word TAPE, or READ, WRITE. implied by verb PRINT. C in col. 1 of statement. key words EQUIVALENCE, COMMON. Structure of Data Names .251 Qualified names: •. .252 Subscripts Number per item: Applicable to: . . Class may be Special index variable: . . . • Any variable: . Literal: • . . Expression: • Form may be Integer only: Signed: . . . Truncated fraction: Rounded fraction: · 253 Synonyms Preset: . Dynamically set: • · 26 unsigned integer. same as variable being defined. none. Number of Names none. Region of Meaning of Names: • . . . . . . DATA DESCRIPTION FACILITIES .31 Methods of Direct Data Description .311 . 312 . 313 . 314 . 315 .316 .317 .318 .319 Concise item picture: List by kind: . . . • • Qualify by adjective: . Qualify by phra,se: . Qualify by code: .. Hierarchy by list: Level by indenting: Level by coding: Others Array size: •. Four-digit integer: . Four-digit integers, 5: Floating point items: . FORMAT statement only. no. no. no. first letter of name. no. no. no. .32 Files and Reels: . . own coding. · 33 Records and Blocks . 331 Variable record size: .332 Variable block size: . o to 3. all variables. no. only integers. yes; only integers. any integer expression or function. . 333 Record size range: .334 Block size READ TAPE, WRITE TAPE: . . . • . • . READ INPUT TAPE, WRITE OUTPUT TAPE: . • . . . DIMENSION (4, 7). FORMAT"(I4). FORMAT (514). FORMAT (F8. 3, EI0.4)for +999.999 and +. 0000E+99. dynamic • fixed (preset variable for buffered input-output). 1 to N blocks • 128 words (binary format). 120 characters (BCD format). 80 columns. 120 characters. READ, PUNCH: PRINT: • . . . BUFFER IN, BUFFER OUT: '" . . • . . variable. . 335 Choice of record size: . READ, WRITE statement • · 336 Choice of block size: fixed for each non- buffered input-output statement EQUIVALENCE statement type; BUFFER statements causes sharing of storage specify names of first and locations. last variables in block. no. · 337 Sequence control: . • own coding. .338 In-out error control: own coding, using IF clauses. I ! . 339 Blocking control: . none; 1 or more full blocks no practical limit. per logical record. yes. no. no. no. · 261 All entities · 262 Procedures Numbered statements:} Subro~tines: . . . . . all inte.r-rer.at~d; no FunctlOns: . . . . . . practical hmlt. Others: . . . . : . . . .263 Data Files:. • . . . . no limit. Record formats: no practical limit. Items: .•• no practical limit. · 264 Equipment Tape units: . Card readers: : } ,otal of 64 unl<' Card punches: Printers: . . . · 27 .3 all names are local to the program, subroutine, or function in which they are defined unless specified explicitly or by block name in COMMON statement. © .34 Data Items . 341 Designation of class: by name • .342 Possible classes Integer: . . . . yes. Fixed point: . no. Floating point: yes. yes. Logical: •.• Alphameric: • yes. · 343 Choice of external radix:. • • . • • . FORMAT statement. .344 Possible external radices Decimal: • . • . . . yes. Octal:. . . • . . . . yes. · 345 Internal justification: alpha automatic left justified. integers automatic right justified. .346 Choice of exte.rnal code: FORMAT statement and READ, WRITE statement. 1962 by Auerbach Corporation and BNA Incorparated 10/62 243: 163.347 § CDC 1604·A 163. .411 Operator list (Contd. ) . 347 Possible external codes Decimal: • Octal: . . . . Hollerith:. . Alphameric: · 348 Internal item size Variable size: Designation: .• Range Fixed point numeric: Floating point numeric: . Alphameric: '. 349 Sign provision: . .35 fixed. none. fixed, 1 word. fixed, 1 word. fixed, 1 word of up to 8 characters. optional. Special Description Facilities . 361 Duplicate format: • 362 Re- definition: float an integer . fix floating point variable. natural log. sine. arc sine. cosine. arc cosine. exponential. square root. arctangent. hyperbolic tangent. produce random number (even distribution). produce random number (Gauss distribution). t denotes function may have prefix X to denote fixed point result. 247. none. 10- 308 to 10+ 308 . 120 characters. 16 octal digits. yes. optional. same as constants . own coding; e ..g., TEN = 10. O• . 354 Conditional variables: . computed GO TO. by multiple references to a .. . 363 Table description Subscription:. . Multi - subscripts: Level of item: • 364 Other subscriptable entities: . . . .. .. single FORMAT statement . COMMON statement . EQUIVALENCE statement . mandatory, in DIMENSION statement. 1 to 3. variables . input- output units . ·4 OPERATION REPERTOIRE .41 Formulae .411 Operator List +: *. 1: **: . ABSF ( )t: INTF( )t: .. MODF (A, B)t : .. MAXOF (A, .•. >t.: . MAX1F (A, ... )t: . MINOF (A, .•. )t: MIN1F (A, .•• )t: DIMF (A, B)t: . SIGNF (A, B)t : . 10/62 RNDEVF ( ): Data Values · 351 Constants Possible sizes Integer: . . . Fixed point: . Floating point: Alphameric: . Boolean: . . • . Subscriptable: . Sign provision: . .352 Literals: . . . 353 Figuratives: . . . · 36 FLOATF ( ): XFIXF( ): LOGF ( ):. SINF(): . ASINF ( ):. CaSF ( ): . ACOSF ( ): EXPF ( ): . SQRTF( ): ATANF ( ): TANHF ( ): RANIF ( ): yes. yes. yes. yes. addition, also unary. sl.!btraction, also unary. .multiplication. division. exponentiation. is set equal to. absolute value. entire. remainder A + B. max value; fixed argument. max value; floating argument .. min value; fixed argument. min value; floating argument. diminish A by B. transfer sign of A to B. .412 Operands allowed Classes: . . . . Mixed scaling: . Mixed classes: . Mixed radices: . Literals: . . . . .413 Statement structure Parentheses a - b - c means: ·a + b x c means: a + b + c means: abC means: numeric only. yes. only in exponentiation and functions. no. yes. (a·b) - c. a + (b x c). (a + b) + c. illegal; parentheses must be used. Size limit: . 660 char. Multi - results: no . . 414 Rounding of results: . truncation of integers at each step in expression. .415 Special cases Fixed Floating X= -X. x = -x: . . K = -K x = x + 1: .. K=K+1 X=X+1. X= 4.7 * Y. x = 4.7 y: . . . K = 47*K/IO x = 5x107 + y2: 50000000+ L**2 X = 5. E7+ Y**2. X= ABSF(Y). x= \yl: . . . K=XABSF(L) x = entire (3.5): . . • . K = XINTF(L) X = INTF(Y) . .416 Typical examples: .'. X= (-B+SQRTF{B*B-4 .. 0 . *A *C »/(2. 0*A). .42 0Eerations on Arrays . 421 Matrix operations: . .422 Logical operations Sizes of operands: AND: Inclusive OR: . Exclusive OR: NOT: Designation: . . 423 Scanning: . none. 48 bits. * + none. B in col. I of each Boolean statement . none. .43 Other Computation: . • subprograms in FORTRAN, COBOL, or symbolic languages may reference one another. .44 Data Movement and Format .441 Data copy example: .442 Levels possible: • Y=X. items. 243: 163.443 PROCESS ORIENTED LANGUAGE: FORTRAN-62 163. . 443 Multiple results: . . 444 Missing operands: . 445 Size of operands Exact match: . . § none. not possible. im plied, except for alpha or input-output. Alignment rule Numbers: Alpha: . . Filler rule Numbers: . Alpha: . • . Truncating rule Numbers: . . . Alpha: . . . . . Variable size destination: . 446 Editing possible Change class: Change radix: Insert editing symbols Actual point: Suppress zeroes: Insert: .• Float: • • . . . . . 448 Special moves:. . . . 449 Character manipulation: .45 right justified or normalized. left justified. zeros. blanks. truncate at left. truncate at right. no . yes. yes. automatic. automatic. automatic point. - sign only. none . none. File Manipulation own coding. Open: • . . . . . . own coding. Close: . . . . . Advance to next record: READ, WRITE, PUNCH, PRINT, BUFFER. BACKSPACE. Step back a record: Set restart point: none. none. Restart: . . . . Start new reel: . own coding. implied in each input-output Start new block: statement. none. Search on key: . REWIND. Rewind: Unload: . . . . . none. . 46 Operating Communication .461 Log of progress: . . . . PRINT uses on-line printer. . 462 Messages to operator: . same as log (error messages are automatically typed on console typewriter). PAUSE and type decimal . 463 Offer options: integer. PRINT message and PAUSE. . . IF SENSE SWITCH n. . 464 Accept option: . . . 47 Object Program Errors Error Discovery .512 Unconditional jump: .513 Switch:. . . . . . .514 Setting a switch: . .515 Switch on data: . . .52 Conditional Procedures .521 Designators Condition: ..•• IF. Procedure: . . . . implied. .522 Simple conditions: . . . expression or variable versus zero . IF (A) nl, n2, n3: If value . 523 Conditional relations: of expression A is less than, equal to, or greater than zero, respectively, go to statement n1, n2, or n3 . . 524 Variable conditions: . . expression always against zero. .525 Compound conditionals: no. .528 Typical examples: . . . IF (X**2.0 - 3.0) 29, 37, 18; go to 29, 37, or 18 if x 2 -3 is respectively less than, equal to, or greater than zero . . 53 Subroutines .531 Designation Single statement: . Set of statements First: . . . . . . Last: . . . . . . .532 Possible subroutines: .533 Use in-line in program: . 534 Mechanism Cue with parameters: Number of parameters: Cue without parameters: Formal return: . Alternative return: . .535 Names Parameter call by value: . . . . . . Parameter call by name: . . . . . . Non-local names: Local names: . Preserved own variables: .• .536 Nesting limit: .537 Automatic recursion allowed: . • . • . . not possible. SUBROUTINE. END. any number of statements. no. CALL XXX (X, Y, Z). maximum of 64. CALL XXX. RETURN at least once. none . none. yes. use COMMON. all . all. no limit . no . Special Actions .54 Overflow: In-out: Invalid data: I/O device busy: GO TO N~ GO TO M, or GO TO M, (35, 47, 18). ASSIGN 35 TO M . GO TO (35, 47, 18) 1. Function Definition by Procedure none. IF (10 CHECK) format checks IF (UNIT) own coding. typed messages. own coding. . .5 PROCEDURE SEQUENCE CONTROL • 51 Jumps . 511 Destinations allowed: . statement. © .541 Designation Single statement: . Set of statements First: . . . . . . Last: . . . . . . . 542 Level of procedure: .543 Mechanism Cue: . . . • . . Formal return: . 1962 by Auerbach Corporation and BNA Incorporated same as set. FUNCTION. END . any number of statements . by name in expression . RETURN. 10/62 CDC 1604-A 243: 163.544 § 163. · 75 .544 Names Parameter call by value: . . . . . . Parameter call by name: . . . . . . Non-local names: Local names: . Preserved own variables: . . • 55 Operand Definition by Procedure: · 56 yes. use COMMON. all. · 562 Control by count: · 563 Control by step Parameter Special index: • Any variable: . Step: ..... Criteria: .. Multiple parameters: • 564 Control by condition: · 565 Control by list: . • . .566 Nesting limit: . . . . . 567 Jump out allowed: . . · 568 Control variable exit status: . . . • . . . EXTENSION OF THE LANGUAGE: . . _ . .7 LIBRARY FACILITIES · 71 Identi!l: . . . . . . · 72 Kinds of Libraries none. Types of Routines .761 Open routines exist:. no. .762 Closed routines exist:. yes. .763 Open-closed is variable: no. TRANSLATOR CONTROL none. .81 Transfer to Another Language: . . . . . current place to named end; e.g., DO 1731= 1, N, 2. none. · 82 no. integer only. positive integers. greater than. no. no. no. no limit. yes. available. can write new function in library. CO-OP Monitor Library. .73 magnetic tape; variable length blocks in relocatable binary format. Varieties of Contents: . subroutine s. functions. service routines. 10/62 named in procedures. ·8 no. yes. .74 .753 Method of call:. • .76 .721 Fixed master: . . . .722 Expandable master: Storage Form: . .751 Insertion of new"j,tem:. separate run, using FORTLIB Compiler. .752 Language of new item:. FORTRAN, CODAP 1, or COBOL. all. Loop Control .561 Designation of loop Single procedure: First and last procedures:. . .6 none. Mechanism only by calling a subroutine written in that language. Optimizing Information Statements .821 Process usage statements:. . . . . . none. · 822 Data usage statements: COMMON. EQUIVALENCE. .83 · 84 Translator Environment: . . . . no . Target Computer Environment:. . no . · 85 Program Documentation Control: . . . . . . . no . .9 TARGET COMPUTER ALLOCATION CONTROL .91 Choice of Storage .92 Address Allocation: none. .93 Arrangement of Items in Words in Unpacked Form: . . standard for numerics. .. 94 .95 Leve~: Assignment of InputOutput Devices: Input-Output Areas: no. specified in input-output statements; re-assignable at load time. automatic (ENCODE and DECODE permit packing into and unpacking from named input-output areas for buffered operations). 243: 164.100 • STANDARD ED]? • REPORTS CDC 1604-A Process Oriented Language FORTRAN-63 PROCESS ORIENTED LANGUAGE: FORTRAN-63 § ,14 164. Description (Contd.) Restrictions (Contd. ) .1 GENERAL .11 Identity: · FORTRAN-63. .12 Origin: · Computer Division, Control Data Corporation. .13 Reference: · FORTRAN-63 General Information Manual (Preliminary). .14 Description FORTRAN-63 contains all the facilities of its predecessor, FORTRAN-62, and a number of valuable extensions. It will be implemented for both the 1604 and the more powerful CDC 3600 computer system. FORTRAN-63 has most of the capabilities of mM 7090/7094 FORTRAN as contained in the mJOB Processor ("FORTRAN IV"), but will not be directly compatible with it. The most significant improvement over CDC FORTRAN -62 is the provision for eight distinct modes of arithmetic. Single and double precision floating point, integer, complex, and logical arithmetic are standard; the remaining three types are "arbitrary" in mode and execution. No changes in the compiler are required when a new type of arithmetic is inserted. The user specifies the variables involved in a TYPE declaration and inserts library routines which execute the cues generated by the compiler. Each library routine for a non-standard type of arithmetic contains 12 arithmetic sections and two inputoutput sections; each section implements a particular instruction type. FORTRAN-63 is a part of the CO-OP Monitor System, which controls translation of source programs and execution of object programs. Restrictions and extensions of the FORTRAN-63 language relative to mM 709/7090 FORTRAN II are summarized below. Extensions (10) through (18) also summarize the improvements over CDC's FORTRAN -62 language. Restrictions: (1) The following statements have not been implemented: FREQUENCY, READ DRUM, WRITE DRUM. (4) The following declarative statements (if used) must procede the first executable statement in a source program: PROGRAM, SUBROUTINE, FUNCTION, DIMENSION, COMMON, EQUIVALENCE. (5) The CHAIN feature, which facilitates segmentation of programs too large to fit into core storage, has not been implemented. (The CO-OP Monitor, however includes an overlay system that can be used by programs in any source language.) (6) Symbolic coding can be incorporated only in the form of separate subroutines called by the FORTRAN program. Extensions: (1) Names may be up to 8 characters in length. (2) The following number ranges can be handled: Floating point: . . . 10- 308 to 10+308 Integer: _2 47 to + 247 Boolean: . . . 16 octal digits (48 bits) . (3) No parenthesized statement number list is required in an assigned GO TO statement. (4) Subscripts may be integer or floating point constants, variables, functions, or expressions. (5) BUFFER IN and BUFFER OUT initiate the buffered reading or writing of one block on magnetic tape from sequential core storage locations, beginning and ending with specified variables. (6) The statements IF (UNIT), IF (EOF), and IF (IOCHECK) permit tests for completion of buffered input-output operations, for end-offile conditions, and for parity errors. (7) ENCODE and DECODE control code or radix conversions and packing into or unpacking from sequential locations of a list of variables (usually those involved in a buffered input or output opera tion) . (8) The statements READ and WRITE may designate any available input or output device. (2) IF ACCUMULATOR OVERFLOW and IF QUOTIENT OVERFLOW result in unconditional branches to the second statement listed; but see Extension (16). (9) The COMMON data storage area can be divided into numbered or labeled blocks; this facilitates the transfer of information between subprograms. (3) Six sense switches and 48 sense lights are simulated by programmed binary flip-flops; alteration of the switch settings is a Monitor function. (10) Data values can be assigned at load time to variables in labeled COMMON storage by means of the DATA statement. © 1962 by Auerbach Corporation and BNA Incorporated 10/62 243: 164.140 § CDC 1604-A 164. . 14 .21 Divisions (Contd. ) Data statements: . Description (Contd.) Extensions (Contd.) (11) Arithmetic and input-output may be performed in any of eight modes: integer, real (single precision floating point), double precision floating point, complex, logical (Boolean), and three "arbitrary modes" (see text above). (12) TYPE declarations (e.g., TYPE LOGICAL A, B, C) are used to designate the modes of lists of variables. Variables that do not appear in TYPE statements are considered type integer if their names begin with I, J, K, L, M, or N; otherwise, they are type real. (13) Mixedarithmetic is permitted. The mode of an expression is the same as the highest order TYPE of operand in it. The order of types, from lowest to highest, is integer, real, double, complex. Mode conversions are performed as necessary. (14) The following symbols may be used in arithmetic/conditional statements: . EQ. .NE. .GT. . GE. . LT. . LE. .AND. . OR. : . NOT. · equal. · not equal. · greater than. · greater than or equal to. · less than. · less than or equal to. · logical and. · logical or . · not. .22 Procedure Entities Program: Subroutine: Function: Statement: .23 (15) Conditional statements may be of the type IF (e) nl, n2; where e is a simple or compound logical expression. A branch to statement nl is executed if e is true, or to n2 if e is false. (16) IF OVERFLOW FAULT and IF EXPONENT FAULT test the status of the corresponding indicators and branch accordingly. (17) $ can be used as a statement separator, permitting more than one source statement to be written on a line. Hollerith item: Alphameric: .15 Publication Date: .2 PROGRAM STRUCTURE .21 Divisions:. . Procedure statements: 10/62 July, 1962 (preliminary specifications; translator is currently in field test status) . one division, composed of the following types of statements. algebraic formulae. comparisons and jumps. input and output. . 24 subroutines and functions . sta tements . statements . characters; blanks are ignored . Data Entities Arrays: Item: (18) Non-subscripted variables can be used as array dimensions; e.g., DIMENSION A (J, K). FORMAT: describes the layout, size, scaling, and code of input-output data. EQUIVALENCE: used to cause two variables to have a common location or to specify synonyms. COMMON: used to cause a name to be common to more than one segment rather than local to each. DIMENSION: describes the elements in each dimension of an array or set of arrays. TYPE: specifies mode of a list of variables; INTEGER, REAL, DOUBLE, COMPLEX, LOGICAL. DATA: assigns constant values to variables at load time. EXTERNAL: declares the following identifiers to be function names . Names .241 Simple name formation Alphabet: Size: Avoid key words: Formation rule: . 242 Designators Procedures Statement label: . Function label: Subroutine label: all variables. integer variable or constant. floating point variable or constant. double precision floating variable or constant. complex variable or constant. Boolean variable or constant. Hollerith item. alphameric item. alphameric item that can only be used for output. alphameric item that can only be input during a run; it can be used for output, or as a format statement . A to Z, 0 to 9 I to 8 char. no. first char must be letter . unsigned integer. same as variable being defined. no designator. PROCESS ORIENTED LANGUAGE: FORTRAN·63 § 164. .242 Designators (Contd. ) Data (if not specified in a TYPE statement) Integer variables: . . . . Floating point variables: Equipment Card: Magnetic tape: Printer: . . . Comments: . . . Translator control: . 25 .3 DATA DESCRIPTION FACILITIES implied by verbs READ, PUNCH. use key word TAPE; or READ, WRITE. implied by verb PRINT. C in col. 1 of statement. .31 Methods of Direct Data Description none. o to 3. all variables. Hierarchy by list: Level by indenting: . Level by coding: Others Array size: Four-digit integer: . . . Four-digit integers, 5: . . Floating point items: . . . . . 32 Files and Reels: . . .33 Records and Blocks yes. FORMAT statement only. yes; TYPE declarations . no. no. first letter of name if not listed by TYPE . no . no. no. DIMENSION (4, 7). FORMAT (14). FORMAT (514). FORMAT (F8.3, ElO.4) for +999. 999 and +. 0000E+99. own coding . no . EQUIVALENCE statement causes sharing of storage locations. no. all inter-related; no practical limits. • Others: .263 Data Files: Record formats: Items: . 264 Equipment Tape units: Card readers: Card punches: Printers: .316 . 317 .318 .319 yes. yes. . 262 Procedures Numbered statements: . . Functions: .311 Concise item picture: . . . . . . 312 List by kind: .313 Qualify by adjective: . . . . . .314 Qualify by phrase .315 Qualify by code: . no. yes. yes; except H"ollerith. yes. all inter-related; no practical limits. Subroutines: all names are local to the program, subroutine, or function in which they are defined unless specified explicitly or by block name in COMMON statement. any other initial letter. Number of Names .261 All entities: Region of Meaning of Names: • . . . . . initial I, ], K, L. M, N. Structure of Data Names Dynamically set: . . . 26 .27 key words EQUIVALENCE, COMMON, TYPE. .251 Qualified names: .252 Subscripts Number per item: Applicable to: . . Class may be Special index variable: . . . Any variable: Literal: Expression: Form may be Integer only: .. Signed: . . . . Truncated fraction: . . . . Rounded fraction: . 253 Synonyms Preset: 243: 164.242 no limit. no practical limit. no practical limit . : } to..l of © 64 unit,. .331 Variable record size: . . . . .332 Variable block size: . . . . dynamic. fixed (preset variable for buffered input-output). 1 to N blocks . .333 Record size range: . . 334 Block size READ TAPE, WRITE TAPE: . . . . • . ', 128 words (binary format) . READ INPUT TAPE, WRITE OUTPUT TAPE: . . . . . 120 characters (BCD format) . . 80 columns. READ, PUNCH:. PRINT: . . . . . 120 characters. BUFFER IN, BUFFER OUT: . variable. .335 Choice of record size: · READ, WRITE statement. .336 Choice of block size: . . . . · fixed for each non-buffered input-output statement type; BUFFER statements specify names of first and last variables in block. . 337 Sequence control: · own coding . .338 In-out error control: . . . . . · own coding, using IF clauses. .339 Blocking control: · none; I or more full blocks per logical record. 1962 by Auerbach Corporation and BNA Incorporated 10/62 243: 164.340 § CDC 1604-A 164 • . 34 .36 Data Items .341 Designation of class: . 342 Possible classes Integer: . . . Fixed point: . Floating point: Logical: . . . Double precision: Complex: . . Alphameric: . .343 Choice of external radix: .344 Possible external radicies Decimal: Octal: . . .345 Internal justification: . . . . . . 346 Choice of external code: . . . . . .361 Duplicate format: · by name or TYPE declaration. Multi-subscripts: . Level of item: . . . 364 Other subscriptable entities: . . . . . · yes. · yes. · yes. · FORMAT statement. . 354 Conditional variabIes: · FORMAT statement and READ, WRITE statement. 10/62 .± 247 · computed GO TO. • mandatory, in DIMENSION statement. .1 to 3. · variables. · input-output units. .4 OPERATION REPERTOIRE .41 Formulae +: · alpha automatic left justified. integers automatic right justified. · none. · 10- 308 to 10+308 . · 120 characters. · 16 octal digits. · yes. · optional. • same as constants. · own coding; e.g., TEN 10.0. · by multiple references to a single FORMAT statement. · COMMON statement . EQUIVALENCE statement . .411 Operator List · yes. · yes. Data Values . 351 Constants Possible sizes Integer: . . Fixed point: Floating point: Alphameric: Logical: . . Subscriptable: Sign provision: .352 Literals: . . .353 Figuratives:. . . . 362 Re-definition: . . .363 Table description. Subscription:. . · yes. · no. · yes. · yes. .347 Possible external codes Decimal:. · yes. Octal: · yes. Hollerith: · yes. Alphameric: · yes. . 348 Internal item size Variable size: · fixed. Designation: · none. Range Fixed point numeric: · fixed, 1 word. Floating point numeric: · fixed, lor 2 words. Complex: · fixed, 2 words. Logical Subscripted: · fixed, 1 bit. Non-subscripted: . · fixed, 1 word. Alphameric: · fixed, 1 word of up to 8 characters. .349 Sign provision: · optional. . 35 Special Description Facilities = · addition, also unary . · subtraction, also unary. · multiplication. I: · division. **. · exponentiation. =: . . . . . · is set equal to. ABSF ( H:. · absolute value. INTF ( )t:. · entire. MODF (A, B) t: · remainder A.;. B. MAXOF (A, ... ) t:. · max value; fixed argument. MAXIF (A, ... ) t: · max value; floating argument. · min value; fixed argument. MINOF (A, . .. )l: · min value; floating arguMIN1F(A, ... ) t: ment . DIMF (A, B) t: · diminish A by B. SIGNF (A, B) t: · transfer sign of A to B. FLOATF ( ): · float an integer. XFIXF ( ): · fix a floating point variable. . LOGF ( ): · natural log. SINF ( ):. · sine. ASINF ( ): · arc sine. COSF ( ): · cosine. ACOSF ( ):. · arc cosine. EXPF ( ): · exponential. SQRTF ( ):. · square root. ATANF( ):. · arctangent. TANHF ( ): · hyperbolic tangent. RANIF ( ):. · produce random number (even distribution) RNDEVF ( ): · produce random number (Gauss distribution). t denotes function may have prefix X to denote fixed point result . .412 Operands allowed Classes: . . . · any of eight. Mixed scaling: · yes. Mixed classes: · yes. Mixed radices: · yes. Literals: . . . · yes. .413 Statement structure Parentheses a - b - c means: . · (a-b) - c. a + b x c means: .a+(bxc). a .;. b .;. c means: · (a .;. b) .;. c. abC means: illegal; parentheses must be used. Size limit: . .660 char. Multi -results: · no. PROCESS ORIENTED LANGUAGE: FORTRAN·63 § 164. 243:164.414 · 45 .414 RouncUng of results: . truncation of integers at each step in expression. • 415 Special cases Fixed Floating x= -x: . . K= -K X= -X. x = x + 1: .• K = K+ 1 X = X + 1x = 4.7 y: . . • K = 47*K/10 X = 4.7 * Y. x = 5x107 +y2: 50000000+L**2 X = 5.E7+Y**2. x = Iyl: • . • . K = XABSF(L) X = ABSF(Y). x = entire (3.5): K = XINTF(L) X = INTF(Y). .416 Typical examples: •. X = (-B + SQRTF(B*B-4. 0 *A *C»/(2. O*A). .42 Operations on Arrays . 421 Matrix operations:. .422 Logical operations Sizes of operands: AND: . • • . . Inclusive OR: . Exclusive OR: NOT: • • . . Designation: • .423 Scanning:. . . . .43 Data Movement and Format .441 .442 . 443 .444 . 445 Data copy example: Levels possible: . . Multiple results: . . Missing operands: • Size of operands Exact match: • . Alpha: . . • Filler rule Numbers: • Alpha: ••. Truncating rule Numbers: ••. Alpha: • • . • . Variable size destination: • 446 Editing possible Change class: Change radix: Insert editing symbols Actual point: • • . Suppress zeroes: • Insert: '" Float: . • . • . . • .448 Special moves:. • . . . 449 Character manipulation: none. own coding. implied in each input-output statement. none. REWIND. none. Search on key: • Rewind: Unload: • • • . . .46 Operating Communication .461 Log of progress: . • . . PRINT uses on-line printer • • 462 Messages to operator: • same as log (error messages are automatically typed on console none. typewriter) • .463 Offer options: PAUSE and type decimal 48 bits (1 bit if subscripted). integer • . AND. PRINT message and PAUSE . . OR. • 464 Accept option: • • . • . IF SENSE SWITCH n. none . . NOT. TYPE LOGICAL. .47 Object Program Errors none. • 44 . 45 Restart: •••. Start new reel: . Start new block: Error Other Computation: • . subprograms in symbolic or COBOL language may reference or be referenced by FORTRAN subprograms. Alignment rule Numbers: • File Manipulation (Contd.) Y=X. items • none. not possible. implied, except for alpha or input-output. right justified or normalized. left justified. zeros. blanks. truncate at left. truncate at right. no. yes. yes. automatic. automatic. automatic point. - sign only. none . none. File lvianipulation Open: . • • . . • • own coding. Close: . . . . . . own coding. Advance to next record: READ, WRITE, PUNCH, PRINT, BUFFER .. Step back a record: BACKSPACE. Set restart point: • none. © Overflow: In-out: Invalid data: I/O device busy: Discovery Special Actions IF clauses IF (10 check) format checks IF (UNIT) .5 PROCEDURE SEQUENCE CONTROL .51 Jumps .511 Destinations allowed: . 512 Unconditional jump: . 513 Switch:. • • . . • .514 Setting a switch: . .515 Switch on data: •• · 52 own coding. own coding. typed messages. own coding . statement • GOTON• GO TO M, or GO TO M, (35, 47, 18). ASSIGN 35 TO M. GO TO (35, 47, 18), 1. Conditional Procedures .521 Designators Condition: Procedure: .522 Simple conditions: • • 523 Conditional relations Equal: . • . • Not equal: • . • • • Greater than:. . . . Less than: • • . . . Greater than or equal: Less than or equal: .524 Variable conditions: .• IF. ,implied. expression or variable versus zero. .EQ.,=. .NE. .GT. • LT. .GE. .LT. true or false for logical expressions. less than, equal to, or greater than zero for arithmetic expressions. · 525 Compound Conditionals IF x AND y: •. • . • IF x OR y: • • . . • . IF x DO a AND y DO b: IF x DC - OR Y DO b: .526 Alternative designator: yes . yes. no. no. branch to second named statement if logical expression is false. .527 Condition on alternative: no. 1962 by Auerbach Corporation and BNA Incorporated 10/62 243: 164.528 CDC 1604-A § 164. . 528 Typical examples: . · 53 Subroutines .531 Designation Single statement:. Set of statements First: . Last: ....•. . 532 Possible subroutines: · 533 Use in -line in program: • 534 Mechanism Cue with parameters: Number of parameters: .• Cue without parameters: . • Formal return: ••. Alternative return: . • 535 Names Parameter call by value: . Parameter call by name: . Non-local names: Local names: . Preserved own variables: . · 536 Nesting limit: . ,. . · 537 Automatic recursion allowed: .•• • 54 SUBROUTINE. END . any number of statements. no. .6 .7 LlliRARY FACILITIES CALL XXX (X, Y, Z). .71 Identity: .72 Kinds of Libraries maximum of 64. CALL XXX. RETURN at least once. none • Operand Definition by Procedure: · 56 10/62 ...... no. integer only. positive integers. greater than. no • no . no . 127 . yes. available. can write new function in library. CO-OP Monitor Library . no . yes. .73 Storage Form: • magnetic tape; variable length blocks in reloeatable binary format. yes. use COMMON. all. .74 Varieties of Contents: . subroutine s. functions. service routines. all. no limit. .75 Mechanism none. .751 Insertion of new item:. separate run. .752 Language of new item:. FORTRAN, CODAP 1, or COBOL . . 753 Method of call:. . named in procedures . no. same as set. .76 FUNCTION. END. any number of statements • .761 Open routines exist: . . no. .762 Closed routines exist:. yes. .763 Open-closed is variable: no . by name in expression. RETURN . TRANSLATOR CONTROL · 81 Transfer to Another Language: . . • • . • only by calling a subroutine written in that language. .82 Optimizing Information Statements none. yes. use COMMON. all. Types of Routines .8 · 821 Process usage statements:. • • • • • none. .822 Data usage statements: COMMON. EQUIVALENCE. all. . . none. · 83 Loop Control . 561 Designation of loop Single procedure: First and last procedures: .•• EXTENSION OF THE LANGUAGE: . • . . none . .721 Fixed master: . . • . 722 Expandable master: Function Definition by Procedure • 541 Designation Single statement: . Set of statements First: . . . . . . Last: • . . . . • . 542 Level of procedure: . 543 Mechanism Cue: . . . . . . . Formal return: .' . • 544 Names Parameter call by value: . . • • . . Parameter call by name: . • . . • . Non-local names: Local names: . . Preserved own variables: . . . . 55 .562 Control by count: . . . IF (X**2. 0-3. 0) 29, 37, 18; '.563 Control by step Parameter go to 29, 37 or 18 if X2-3 Special index: . is respectively less than, Any variable: • equal to, or greater than Step:.. • . . • zero. Criteria: . • .. • IF «(A*B). GT. C). AND. (D. Multiple parameters: EQ. E» 7, 12; go to 7 if the expression is true and • 564 Control by condition: • 565 Control by list: . • . to 12 if false. • 566 Nesting limit: . . . . . 567 Jump out allowed: .• '.568 Control variable exit status: . . . . • . . not possible. .84 none. current place to named end; e. g., DO 173 1= 1, N, 2. . 85 Translator Environment: . Target Computer Environment:. . . • . no . no. Program Documentation Control: . . . . . .-. no. I AUERBACH I @ PROCESS ORIENTED LANGUAGE: FORTRAN-63 243:164.900 .94 H64. •9 TARGET COMPUTER ALLOCATION CONTROL . 91 Choice of Storage Level: no. .92 Address Allocation: •. none. .93 Arrangement of Items in Words in Unpacked Form: • • • • • . . • standard for numerics. .95 © Assignment of InputOutput Devices: •. specified in input-output statements; re-assignable. at load time • Input-Output Areas: . . automatic (ENCODE and DECODE permit packing into and unpacking from named input-output areas for buffered input- output operations ). 1962 by Auerbach Corporation and BNA Incorporated 10/62 243: 165.1 00 .STA"ARD II EDP CDC 1604-A REPORTS' Process Oriented Language COBOL PROCESS ORIENTED LANGUAGE: COBOL § 165 .14 .1 GENERAL .11 Identi~: 1604 COBOL. .12 Origin: CODASYL committee; implemented by Control Data Corporation. .13 Reference: . 14 Introduction STM 07-09 September, 1962 . Introduction (Contd.) Deficiencies: . . . . . none in prospect. Electives: These are listed below by reference to the keys under which they are discussed in the Users' Guide (4:161). NO 'The CDC implementation of COBOL 1961 is scheduled to become available at the start of 1963; however, prelim inary information is now available. It is stated that it will include all of Required COBOL 61, the electives defined below, and the SORT provision of Extended COBOL 61. Compilation will take place under the supervision of the CO-OP Monitor, and, therefore, a programmer is able to mix COBOL languages with FORTRAN 62, or CODAP 1 assembly language within the same program. 'The actual choice of I/O units does not take place until object time in this system and, therefore, the RECORDING MODE IS clause of the file description is meaningless. 'This choice also requires that the operating instructions be written in terms of the CO-OP Monitor names for I/O units, such as "Standard Input Medium, "instead of "Tape No.7." In addition to the SORT and ENTER functions, the most important electives that provide new procedural facilities are: #16: RANGE IS ... clause, which allows a condition name to be associated with one or more values or ranges of value. #26: USE verb, which allows standard, library or own COBOL coding procedures to be implemented when file or reel labels are being processed, or when input-output errors have been detected. A separate section allows the items in a label block to be named and described. #33: Fourteen decimal digits are used in arithmetic. There are three other features, which simplify the writing of programs rather than adding to the available facilities: #1: COMPUTE, which allows the use of+, -, *,/, **,=, in formulae. #28: MOVE CORRESPONDING, which simplifies the movement of relevant portions of one data area to another, and performs any necessary editing. #25: INCLUDE verb, which allows procedure paragraphs to be extracted from a library at compilation time. © TITLE 1f1 Further- characters #2 #4 #5 Further characters Long literals Figurative Constants #6 Figurative Constants #8 Variable Length Blocks FILE CONTAINS Table Size #9 # 13 #16 #20 #21 #22 #24 #25 #26 #27 #28 #32 #33 #34 #35 #36 #37 #39 #43 #45 #47 RANGE IS VALUE option Labels COMPUTE ENTER INCLUDE USE LOCK MOVE CORRESPONDING Formulas Operand size Specific relationship COMMENT +, -, *,/, **,=. = only; not > or < Up to 225 characters UPPER-BOUND(S); LOWER BOUND(S). HIGH-VALUE(S); LOW VALUE(S). Allows table and array sizes to be set at object time. see description above. see description above. see description above. see description above. see description above. see description above. see description above. see description above. IS UNEQUAL TO, EQUALS, EXCEEDS IF ... NOT ZERO Implied subjects ANDS or ORS Labels and Errors File Description Library I/O Procedures Library DATE - COMPILED Extensions The SORT facility allows the sorting of a file on a number of keys. Each record in the file can be processed before and/or after the sorting process. 1962 by Auerbach Corporation and BNA Incorporated 10/62 243:166.100 • II STANDARD EDP REPORTS CDC 1604-A Process Oriented Language CXA PROCESS ORIENTED LANGUAGE: CXA § 166. .1 GENERAL .11 Identity: .12 Description CXA gontrol Data E~tended ~lgol. The CXA language has not been fully released, but preliminary information is available. Control Data Corporation expects to release the CXA translator in January, 1963. © CXA is stated to be based on ALGOL 58 and is to inelude BALGOL as a subset. As CXA is designed to run under the control of the CO-OP Monitor, however, the BALGOL External Statement, which allows the use of machine language, has not been implemented. The CXA translator is being produced by a Compiler Generating System. This system uses one set of tables to describe the source language and other tables to describe the object language to produce a compiler. It is, there.fore, possible by modifying the tables and re ~running the CGS to produce a modified version of the.CXA compiler for a modified language, thereby giving a user some freedom to select his own ALGOL dialect if he wishes to do so. 1962 by Auerbach Corporalion and BNA Incorporaled 10/62 243: 172.1 00 ·STAiD/'D _EDP ." CDC 1604-A REPORTS M. O. Language CODAP-1 MACHINE ORIENTED LANGUAGE: CODAP-1 § .22 172. B: . . . . . . . .1 GENERAL .11 Identity:. . . . . . . CODAP-l. . 12 Description designates an index register, a jump key, a stop key, or a subinstruction; can be written in absolute or mnemonic form. M:. . . . . . . . . . (a) for machine code instructions, an address, in absolute or relative form, or a literal constant. (b) for pseudo-ops a series of parameters extending into remarks column . CODAP-1 is an outgrowth of CODAP, which is the assembly routine that has been available for the CDC 1604 since 1960. The assembly language performs two roles; first, it allows a programmer to write machine instructions and constants in a convenient form, and second, it provides a systematic means of using any library, monitor, or subprogram as desired. Labelling is unusually free, requiring one letter with an option of being followed by up to seven further alphameric characters for all labels, except one type of data area which uses an all numeric label. There are two types of data areas; both called "COMMON" areas. These are differentiated in the language by having alphameric (called "Labelled COMMON") or numeric (called "Numeric COMMON") labels, and in use by being able, or not able, to preset the contents of the areas at load time only if "Labelled COMMON" is used. Communication with other independently written routines is arranged by the EXTernal Symbol linkage and Lffirary pseudo-ops. These operations provide for a label to be common to more than one routine and also control the library call and the setting of parameter values in the Lffirary routines. The actual linkage is created at loading time. .2 LANGUAGE FORMAT .21 Diagram LOCN 8 OPN B M 6 2 21 REMARKS 40 size in card [columns . 23 Corrections: . .24 Special Conventions .241 Compound addresses: . 242 Multi -addresses: . 243 Literals:. . 244 Special coded addresses: .245 Other Radix definition: .3 LABELS .31 General .311 Maximum number of labels: . . 312 Common label formation rule: .313 Reserved labels: . 315 Designators: .316 Synonyms: . 32 .22 Legend (Contd.) Universal Labels: Legend LOCN: OPN: unique label allowing cros s referencing within or outside the subprogram. (a) Machine code, in abso.33 Local Labels lute or numeric form. (b) Pseudo-op codes, which .331 Labels for procedures produce parameters Existence: . . . used by a supervisor Formation rule routine, controlling First character: storage allocation, linkOthers: age with other programs, Number of charand input assignments. acters: © 1962 by Auerbach Corporation and BNA Incorporated no special facilities. e.g., SYMBOL + 5 . none . up to 40 char, any code . * means this address. ** means - O. OCT, DEC, BCD, FLX pseudo ~odes preceeding the literals and constants. no practical limit . 1 to 8 alphamerics including certain special characters with no embedded blanks. First character must be non -numeric. none . none. yes, via EQUivalence pseudo-op . none, but individual labels can be made local to several independent subprograms, being called an External Table Entry to each subprogram. optional. non -numeric character. any non-blank character. 1 to 8. 10/62 243: 172.332 § CDC 1604·A 172 • . 332 Labels for library routines: . .333 Labels for con' stants: same as for procedures, or as an element of an array within a numbered-COMMON statement. none. none. Constants PROCEDURES .51 Direct Operation Codes .511 Mnemonic Existence: Number: Example: Comment: same as for procedures. optional. 1 to 8 alphabetics, "Labeled Common Blocks. " optional. 8 numeric or blank characters, an all blank label is acceptable, "Numbered Common Blocks. " same as for procedures. Labels for arrays: . .41 .5 same as for procedures. Labels for reserved blocks for working storage Existence: Formation rule: DATA Input-Output Areas: .512 Absolute Existence: Number: Example: Integer: Fixed numeric: Floating numeric: Alphameric, BCD, Flexowriter or Teletype coding: 64 characters. .412 Maximum size literals Integer Decimal: 32,767. Octal: 77,777. Fixed numeric: none. Floating numeric: none. Alphameric: 64 characters. .42 Working Areas .421 Data layout Implied by use: Specified in program: .422 Data type: .423 Redefinition: 10/62 no. BLOCK and COMMON statements. implied by use. use of'BLOCK statements. optional with mnemonic. 64 (only 62 used). 45 for Add Logical. Macro-Codes: none, nor any facilities for programmer insertion. .53 Interludes: none. .54 Translator Control .541 Method of control Allocation counter: Label adjustment: Annotation: . .542 Allocation counter Set to absolute: External Language 14 decimal digits plus sign. 16 octal digits plus sign. not allowed. 14 digits with a decimal or binary exponent of lip to 3 digits, plus sign. optional with absolutes. 64 basic with 8 true alternatives . FDV; Floating Divide. where one op code has more than one type of operation, specified by "B, " different mnemonics may be used for the common code. .52 .411 Maximum size constants Machine Form . specified in program. same as for procedures. . 334 Labels for files: . 335 Labels for records: . .336 Labels for variables: .337 Labels for other subprograms: .338 Others Labels for blocks containing preset data Existence: Formation rule: .4 .43 Set to label: Set relative to label: Step forward: . Step backward: Reserve area: .543 Label adjustment Set labels equal: Set label relative: Set absolute value:. Clear label table: .544 Annotation Comment phrase: Title phrase: . 545 Other Allocation mode: various pseudo-op. various pseudo-op. REMark pseudo-op. yes. (ORG pseudo-op; absolute or predefined entry in location). yes. yes. implied by set relative to label. implied. yes. yes. yes. yes. not within single subpro" gram; yes, by dividin& in-. to separate subprograms. yes. no . absolute or relocatable. none. .55 Facilities Omitted: .6 SPECIAL ROUTINES AVAILABLE .61 S~ecial .62 Seecial Functions Arithmetic: none. MACHINE ORIENTED LANGUAGE: CODAP-1 § 172. .753 Method of call: . . 621 Facilities: . 622 Method of call: .63 .64 Overlay Control: none, any could be added in installation library . LIDrary pseudo-op. none, but reserved space, called COMMON, can be redefined for each subprogram. Data Editing . 641 Radix conversion: . Code translation: .642 Format control: .65 Input-Output Contro1: . decimal-to-binary for initial constants. alphabetic-to-BCD, Flexowriter and Teletype. none. own program, with I/O pseudo-op check on I/O units involved. .66 Sorting: none. .67 Diagnostics: none in CODAP.l system, up to 10 snapshots and various dumps incorporated in CO-OP Monitor. .. 7 .76 Identity: . .72 Kinds of Libraries no. yes. .73 Storage Form: magnetic tape. .74 Varieties of Contents: yes . Macros: .82 Pseudos Code BCD: BES: BLOCK: . BSS: COMMON: DEC: . EJECT: . END: . ENTRY:. EQU: . EXT: . FINIS: FLX: . IDENT: I/O: LID: OCT: . ORG: . ORGE: R.SM: . SPACES: TEL: . via CO-OP Monitor. © ./ .81 as determined by installation. CODAP 1, or FORTRAN62. yes . INSTRUCTION CODE REPERTOIRE Mechanism . 751 Insertion of new item: . 752 Language of new item: "l .8 installation library. .721 Fixed master: . 722 Expandable master: . LID code identifies routine. EXT identifies entry point . Manual lists special calls. Insertion in Program .761 Open routines exist: . .762 Closed routines exist: . 763 Open-closed is optional: .764 Closed routines appear once: LIDRARY FACILITIES • 71 .75 243:172.621 . 84 Direct: . 1962 by Auerbach Corporation and BNA Incorporated none. Description Binary Coded Decimal. Reserve Block, End with Symbol. Identify Data Region. Reserve Block, Starting with Symbol. Identify COMMON arrays. Decimal Constant. Eject Line Printer Page . Physical End of Subprogram. Entry Point Symbol. Equivalence. External Symbol. Physical End of Source Program. Flexowriter Code. Identifier. Input/Output Assignements. Identify Library Routine. Octal Value. Origin Address. Origin Address Relocatable. Remarks Only . Space Listing. Teletype Codes. see Section 243:121. 100. 10/62 243:182.100 _SlA,oARo II EDP R£I'ORTS CDC 1604-A Program Translator CODAP·1 PROGRAM TRANSLATOR: CODAP·1 § 182. .223 Obligatory grouping: . . • . . .1 GENERAL . 11 Identity: . .12 Description: .23 The CODAP-1 Translator produces output in either relocatable or absolute binary coding. The output is always on magnetic tape. The input may be either punched cards, paper tape, or magnetic tape in card format. This translator will also assemble CODAP source language programs provided that certain restrictions (described below) are observed. .231 Maximum number of source statements: . .232 Maximum size source statements: .233 Maximum number of data items: .234 Other Maximum number of Symbols: . . . • . CODAp·!, The translator produces a listing of language errors and of the volume of storage required for the subprogram. An optional listing on tape or on-line printer of both the source and object programs is available. Relocatable Binary Output. Compatibility with CO-OP Monitor. Pseudo-ops. BLOCK, COMMON, ENTRY, EXT. If any of the following are desired, use CODAP: Compatibility with AUTOMONITOR. Pseudo-ops. WST, RST. · 13 Originator:. Control Data Corporation. . 14 Maintainer:. Control Data Corporation . · 15 Availability: presently available in 1604 version. .2 INPUT .21 Language · 211 Name: . 22 .3 OUTPUT .31 Object Program .311 Language name: .312 Language style: . 313 Output media: .32 Form . 221 Input media: .222 Obligatory ordering: magnetic tape . punched card. punched paper tape. none. © 80 coIU):Ilns. no practical limit. 4, 096, with 4, 096 Equivalent names. 62, with 62 Equivalent names. .321 Standard inc1usions: .322 Compatible with: .33 absolute or relocatable binary. binary coding suitable for CO-OP Monitor. magnetic tape . Conventions none. CO-OP Monitor. Documentation Subject . . '. . . . CODAP-1. no practical limit. Maximum number of Named Entry Points: 100, with 100 Equivalent names. Maximum number of Pseudo-operation Names: . • . . . • . 31. Maximum number of Machine Operation Names: . • . • • • . 64. The relationship between the CODAP-1 and CODAP translators is summarized below. If any of the follOWing are desired, use CODAP-1: Size Limitations Maximum number of Block Common Names: CODAP-1 is particularly designed to produce Relocatable Binary Output suitable for the CO-OP Monitor. The translator is stored on the CODAP Monitor tape as a subsidiary control system. It can be used as part of the CO-OP Monitor facilities as a "Translate and Run" assembler. BLOCK, defining data area, is immediately followed by associated COMMON defining arrays . Source program: . Object program: . Storage map: Provision listing 2 (optional). listing 2 (optional). top and bottom limits only (listing 1) . none. listing 2 (mandatory). Restart point list: Language errors: Entry points to subroutines: • . . listing 1. External symbols used in subroutines: . . . . . . . listing 1. 1962 by Auerbach Corporatian and BNA Incorporated 11/62 g43: 182.4 00 § CDC 1604·A. 182. .52 .4 TRANSLATING PROCEDURE .41 Phases and Passes Pass 1: . Pass 2: . •42 Optional Mode . 421 .422 .423 . 424 .425 Translate: Translate and run: Check only: Patching: Up-dating: .43 Special Features .431 Alter to check only: .432 Fast unoptimized translate: • .433 Short translate on restricted program:. .44 .45 Bulk Translat~ Conditions I : stores the input; if necessary uses a scratch tape. a) produces IDCcoding from program Identity card, and BLOCK and COMMON sequences. b) produces a binary pro· gram tape. c) optionally produces the Entry Point Symbol Table, and the Linkage Address Table for use by the CO-OP Monitor loader. d) produces a transfer address to initiate the routine. yes • yes. yes . no. no. . . . ....... using mM 088 Card Reader at 650 cards/min input and CDC 1607 Tape output. using CDC 1607 Tape input and output. using CDC 606 Tape input and output. II: III: . 521 Normal Translating . I : 500 cards/min (*). ? + O. 002S mins (*). 2000 cards/min (*). ? + O. 005S min (*). ? II: III: (*) Manufacturer's estimate considered to be reliable but not final. .53 Optimizing Data: · none . .54 Object Program Performance: • · unaffected . .6 COMPUTER CONFIGURATIONS .61 Translating Computer .611 Minimum configuration: no. no. no. yes under CO-OP Monitor 'facUities; otherwise none. CDC 1604 or 1604-A with 32K core store and 4 magnetic tapes. .612 Larger configuration advantages: .62 none, Target Computer .62.1 Minimum configuration: .622 Usable extra facilities: CDC 1604 computer with one input device • · all available ,facilities. Program Diagnostics .451 Tracers: . .452 Snapshots: .453 Dumps: .46 Translation Time Translator Library: none. up to 10 in CO-OP Monitor. yes, automatically or under operator's control in CO-OP Monitor. TRANSLATOR PERFORMANCE .51 Object Program Space none, but see CO-OP Monitor .512 Space required for each input-output file:. implied in program. .513 Approximate expansion of procedures: 1 to 1. 11/62 ERRORS, CHECKS AND ACTION Check or Error Interlock Action MisslIig entries: Unsequenced entries Duplicate names: Improper format: Incomplete entries: Target computer over· flow: Inconsistent program: none. .5 • 511 Fixed overhead: . • . •. 7 .8 none. none. check check check listed on output. listed on output. listed on output. checked at load time. none. ALTERNATIVE TRANSLATORS Computer: Identity: . Date: Comment:, CDC 1604. CODAP . 1960. ancestor of CODAP-l that is not compatible with CO-OP Monitor, has slightly different pseudoops. 243: 183.100 CDC 1604-A Program Translator COBOL PROGRAM TRANSLATOR: ADVANCE REPORT § 183. .12 .1 GENERAL .11 Identity:. . 12 Description . . . . . . 1604/1604-A COBOL. The 1604/1604-A COBOL is scheduled to become available in December, 1962, and to compile COBOL statements at a rate of 450 cards per minute. It will require a 32K CDC 1604 or 1604-A as a translating computer, and will use between two and five tape units. An on-line printer, card reader, punch may each be substituted for one of the tape units. Currently, no details of advisable styling are available. Description (Cont'd) b. The statements are checked for format, conflicting or illegal descriptions, and incomplete or duplicate definitions. As errors are detected. diagnostics are generated following the source statement or group of source statements that are in error. c. The File Environment and Reference Tables are partially created. The File Environment Table contains the descriptions of internal and external files. The Reference Table lists all data descriptions required to create the symbol table for Phase II processing. If certain critical errors have been detected during Phase I, processing is terminated. Otherwise. the two tables are firialized. This consists of: Available listings will be: a. Additional checking and diagnostic generation. • Error Messages. • Reference listing of the source program. b. Assigning of relocatable addresses to the data items. • Optional Data Map (see illustration). c. Preparation of constants. • Optional Listing of Object Program. d. Generation of a map of memory allocated to the data items. • Optional Relocatable binary card deck. After this final processing. the Reference Table is complete enough to serve as a symbol table for Phase II processing. Modes of operation are: • Compilation only. .. Compile and execute. • Compile only selected portion of a program. The File Environment Table will have information added during Phase II processing. It will become a part of the object program to serve as a directory for the handling of files. This last facility is designed to allow fast error correction in source language. This is practical because no scratch tape is used during the compilation. During finalization of the tables, critical errors may be detected. These errors will not stop the processing, but will prevent execution of the program. The translator is divided int~ two phases: Phase I, which operates on the Identification, Environment, and Data Division; and Phase II, which operates on the Procedure Division. Only one pass through the source tape is required, and the speed, quoted above, of 450 cards per minute is applicable for a five tape system, with listing of the object program suppressed. Phase II The following description of the two phases is taken from CDC's memorandum dated September 12, 1962. Phase I During this phase, the source statements of the Identification. Environment. and Data Division are read. As they are read: a. A reference listing of the statements is generated (if requested). © The statements of the Procedure Division are read. As the statements of each paragraph are read: a. The statements are checked for format, legal wording, completeness, and continuity. As errors are detected, diagnostics are generated following the source statement or group of statements in error. b. Data items referenced by the statements are looked up in the Reference Table and an object code generated to perform the action. Checks for correct use of data items are performed as the object code is generated. c. As each paragraph is completed, it is formed into a closed subroutine. It is then output in one or all of the forms: 1962 by Auerbach Corporation and BNA Incorporated 11/62 243:183.120 § CDC 1604-A d. Information is added to the File Environment Table to complete it . 183. . 12 Description (Contd.) e. The logical flow of the program is catalogued in the Sequence Table. 1. An object code listing. The entire Procedure Division is processed even though errors have been detected. Detection of a critical error will cause suppression of card decks, load-and-go tape, and program execution. 2. A relocatable binary card deck. 3. A subroutine on the load-and-go unit for execution. OPTIONAL DATA MAP tjUPt< !i"~G u: III: L ~'i" SI0RA!;!: N,~MI: • OF DATA r:N1HY r~ CHAkPQS p LOG SlZE CLASS USAGE SYNCIoI JURT AI.NK POINT OCCJ~SDepeDIT IF 0 LOC 04 MEr.;EJ.Vt::R n 0 00044 2!3~ NUM O~ tilUO n 0 00044 1 NUM FX DEC n~ biOi n 1 00044 1 NUM FX n~ \jli.l? n 2 00044 1 NUM FX DEC 131. ll? bl03 n 3 00044 1 NUM FX Dec 21L. 11? t.J1U4 n 4 00044 1 NUM FX DEC SOL 11? U1U? n 5 00044 5 NUM FX DEC O? 81U6 n 2 00047 5 NUM FX 11/62 R DEC DEC 5L R 5L ::IN 243:184.100 .STAIWARD EDP • CDC 1604·A Program Translator FORTRAH·60 REPORTS PROGRAM TRANSLATOR: FORTRAN.60 § 184. . 23 .1 GENERAL . 11 Identity: . 12 Description A number of tables are prepared dUringcompilation. While none of these tables have a fixed size (they are pUsh-down type tables), the sum of their entries must not exceed 16,000 locations . The main tables are listed below; alongside is given the number of locations each entry uses . FORTRAN-60 Table The FORTRAN-60 Translator is a load-and-go type which solves most of its allocation problems by calling the six index registers by the fixedpoint variables I through N. These registers are called whether or not a programmer actually uses them. It can be seen, therefore, that programs written to take advantage of this feature will run very much faster than ones written without such planning. Address Assignment Table: Storage of location symbols from tha generated code: Equivalence Table: Information from equivalence statements: . Constants Table: Storage of constants used by object program: • . . Assigned Variables: Variables which have been assigned locations: • Format Numbers: Format Statement Numbers: . •• DO-Exits: Statement number at end of range of a DO: Statement Numbers: Statement numbers assigned locations: Common Variables: Names appearing in COMMON statements: Arrays: Names appearing in DIMENSION statements: In general, given well-designed programs, comparisons to good hand-coding show a 20 per cent increase in time usage and a doubling of space requirements (see Paragraph .54). An interesting feature is the comparative lack of size limitations (see Paragraph .234). FORTRAN-60 runs under its own monitor and is not presently available to operate under CO-OP Monitor control. A systematic translation of FORTRAN-60 programs to FORTRAN-62 is under way and is being coordinated by the CO-OP Users Group. At present it is not possible to forecast whether or not FORTRAN-62 and FORTRAN-63 will entirely supersede FORTRAN-60. .13 Originator: Control Data Corporation. .14 Maintainer: Control Data Corporation. .15 Availability: 1959. .2 .21 Locations/Entry 2 2 1 2 1 1 2 1 1 Language .211 Name: . 212 Exemptions: .22 Size Limitations FORTRAN-60 . none. .3 OlITPUT .31 Object Program: • Form .221 Input media: . 222 Obligatory ordering:. . 223 Obligatory grouping:. punched cards or magnetic tape . all statements must be in correct sequence . none. © 1962 by Auerbach Carp<>ratian and BNA Incorporated none necessarily. An intermediate assembly (MAP) listing can be output; but frequently this is converted to machine language and left in storage at the end of compilation. See paragraph .32. 12/62 243: 184~'320 § CDC 1604· A 184. •32 .463 Form Storage medium: Organization: Conventions .321 Standard inclusions: • 33 FORTLm Compiler. run on "FORTLm Compiler". This adds a FORTRAN program, presently in storage, onto a library tape. Documentation Subject Source program: Object program: Storage map: Restart point list: Language errors: . Provision optional (Listing 1). MAP listing (Listing 2). none. no. error printouts placed on tape; errors in FORMAT statements noted at object time. .4 TRANSLATING PROCEDURE •41 Phases and Passes Statements are read in, decoded, and the appropriate code generated in an intermediate language called MAP. The statement may then be listed (Listing 1). After all statements have be;en read, passes are made over the MAP language to satisfy all conditions. The MAP may then be output as a listing (Listing 2). It is converted to machine language and stored ready for execution. .464 Contents Routines: Functions: Data Descriptions: .465 Librarianship Insertion: Amendment:. • Call Procedure: Translate: Translate and run: Check only: Patching: • • . • Updating: • . • . .43 S~cial yes • yes . yes • no . no. Features TRANSLATOR PERFORMANCE .51 Object Program Space .511 Fixed overhead Name: Space: .44 Bulk Translating: no. .45 Program Diagnostics: none. 'Translator Libra!y .461 Identity: .462 User restriction: 12/62 resident' package. 2, 054 words . .513 Approximate expansion of procedures: .52 averages approx. 5 or 6 instructions per FORTRAN statement (* *). Translation Time Condition I: . CDC 1607 Tape input, no output. CDC 1607 Tape input and output. Condition II: I: II: .54 .••••.. reference library. general. 0.16+ 0.0023 S min . 0.16 + 0.0025 S min. (where S is the number of elementary statements.) Object Program Performance Type .431 Alter to check only: yes. .432 Fast unoptimized translate: not applicable. .433 Short translate on restricted program: . no. .46 system s run. systems run. name followed by parameters. Some can be used in procedural statements (such as LooF), others are called by service and debugging programs. . 521 Normal Translating: Optional Mode .421 •422 •423 •424 . 425 closed. yes. no • .5 It is possible and normal for small enough programs to be compiled in a manner such that the MAP is stored in memory and converted to running 'code without restoring to intermediate tape passes. . 42 magnetic tape. grouped by: Compiler and compiler subprograms • Mathematical subprograms. Service programs. Elementary algebra: Complex formulae: Deep nesting: Heavy branching: Complex subscripts: Data editing: Overlapping operations: Time Space increased by 20% doubled. increased by 20% increased by 20% doubled. doubled. increased by 20% doubled. increased by 50% unaffected doubled. unaffected. not possible. (* *) Analyst'S estimate, provided as a guide .only. PROGRAM TRANSLATOR: FORTRAN-60 § 243: 184.600 184. .7 .6 COMPUTER CONFIGURATIONS • 61 Translating Computer . 611 Minimum configuration: • • • .612 Larger configuration advantages: • . • • .62 CDC 1604 with at least 2 tape units. additional tape units save tape handling time and on -line card and printer time. Error Check or Interlock Missing entries: check unsequenced entries: check Duplicate names: check Improper format: check Incomplete entries: check Target computer overflow: check Inconsistent program: equivalence check Target computer .621 Minimum configuration: . 622 Usable extra facilities: ERRORS! CHECKS AND ACTION Size limitations exceeded: CDC 1604. paper tape. CDC 1605 card units and printer. CDC 1607 tape units. CDC 1610 card units and printer. CDC 1612 printer. © .8 check Action halt compilation before running • halt compilation before running• halt compllation before running. halt compilation before running. halt compllation before running. halt compllation before running. halt compllation before running. halt compilation before running• ALTERNATNE TRANSLATORS Computer Identity Date CDC 1604 CDC 1604 FORTRAN 62 FORTRAN 63 1962 1963 1962 by Auerbach Corporation and BNA In<:orporoted 12/62 243:185.100 CDC 1604·A Program Translator FORTRAN·62 PROGRAM TRANSLATOR: FORTRAN·62 § 185. .1 GENERAL . 11 Identity: . . . 12 Description .22 Form .221 Input media: FORTRAN·62. .23 Size Limitations .232 Maximum size source statements: . FORTRAN-62 operates under the CO-OP Monitor, and translates programs or portions of programs .234 Others into relocatable binary code suitable for use in the No. of nested parenCO-OP Monitor system. In this system, each separate subprogram is an independent entity, wiiththeses: . . . . No. of nested DO out the restriction that the subprograms which are statements: compiled, or which are executed together, need be Dimensioned variwritten iD. the same language. CODAP I, the CDC 1604 Assembly Program, is the only other language abIes: . . . . . besides FORTRAN-62 presently available. However, • COBOL and FORTRAN 63 will be available shortly. .3 OUTPUT Under CO-OP Monitor techniques, compile or loadand-go techniques are possible, although this is no part of the translator. Object program diagnostic features are also handled in this way. The integration of subprograms, or routines to be performed at object time, does not require them either to be available at compilation, or to be manually integrated before running. All such librarianship is done automatically by the CO-OP loade .. at object time, with the translator merely generating the necessary parameters. .31 .32 .13 Originator: Control Data Corporation. .14 Maintainer: Control Data Corporation. . 15 Availability: currently in field test. .2 INPUT . 21 Language FORTRAN-62. none. © 100 variables and constants. 39. 20. 300. Object Program .311 Language name: . 312 Language style: . 313 Output media: relocatable binary . relative machine code . magnetic tape, or cards. Conventions . 321 Standard inclusions: . .322 Compatible with: .33 By comparison with FORTRAN -60, the translation process for FORTRAN 62 is approximately 20 per cent quicker. The object program performance is not much different than that of the FORTRAN-60: 20 per cent more time and twice as much space as hand - coded routines. However, the recommended style is very different. In FORTRAN-62, I, J, K, L, M, N are ordinary fixed point variables, in no way different from any others. Index Registers are reserved to control DO-loops, so that the recommended style is to use DO-loops, and not to nest them deeper than five at anyone point. Subscripts are evaluated each time they are used; therefore, it is also desirable to avoid unnecessary multiple subscripts. . 211 Name: . 212 Exemptions: magnetic tape; paper tape; cards. Master Control System. CO-OP Monitor. Documentation Subject Source program: Object program: . Storage map: . . Restart point list: Language errors: Provision Listing 1. Listing 3. Listing 2 (partially; only external symbols mapped). no. Listing 3, and at object time. .4 TRANSLATING PROCEDURE .41 Phases and Passes Each statement is processed as it is input; machine language object programming is produced and stored, while the source program is listed along with any error checks. At the end of the compilation, the program, still in storage, is available for optional punch out or listing . · 42 Optional Mode .421 · 422 . 423 · 424 .425 Translate: Translate and run: . Check only: Patching: Updating: . 1962 by Auerbach Corporation and BNA Incorporated yes . yes . yes . no . subroutines can be assembled separately. 12/62 243: 185.430 § CDC 1604·A 185. .43 .54 Special Features .431 Alter to check only: .432 Fast unoptimized translate: .433 Short translate on restricted program: automatic OIl no. .45 Program Diagnostics: see CO-OP Monitor, Operating Environment. .46 Translator Library magnetic tape. as loaded. closed only. no. yes, (can have been in CODAP, COBOL, or FORTRAN) . LmEDIT routine. LmEDIT routine. CALL, or use as a function, causes calling sequence to be formed, which in turn initiates the relocatable loader of the CO-OP Monitor system to locate and load the actual routines from tape at object time. TRANSLATOR PERFORMANCE • 51 Object Program Space • 511 Fixed overhead Name: . . . . . . . CO-OP Monitor. doubled. Deep nesting increased by approx 20% increased by approx 20% doubled. Complex subscripts doubled doubled • Data editing unaffected unaffected. Overlapping operations unaffi:cted, if programmer checks translator methods unaffected .6 COMPUTER CONFIGURATIONS .61 Translating Computer .611 Minimum configuration: ..... . .612 Larger configuration advantages: .62 .621 Minimum configuration: . . . . . . . .622 Usable extra facilities: • . . • . . . 0.1 + 0.002 S min, where S is the number of statements; includes card input, source and object program listings, and binary tape output. Optimizing Data Index Registers: .8 the control variables of the first 5 DO loops in any nest are allocated to index registers. doubled. CDC 1604 with 4 tape units. none. Target Computer Translation Time . 521 Normal translating: . 12/62 increased by approx 20% Heavy branching Library Tape . none. .5 . 53 Complex formulae no. yes, via CO-OP Monitor. . 52 Space doubled. Elementary algebra error. Bulk Translating: . .465 Librarianship Insertion: Amendment: Call Procedure: Time increased by approx 20% Type .44 .461 Identity: • . . . . . 462 User restriction: • . 463 Form Storage medium: Organization: . . 464 Contents Routines: . Data Descriptions: . . . . Subprograms: . Object Program Performance CDC 1604 with 2 tape units. CDC 1604-A central processor. CDC 1605 card equipment. CDC 1607 tape units . CDC 1608 tape units. CDC 1610 card equipment . CDC 1612 printer. CDC 606 tape unit. CDC 1617 card reader. ALTERNATIVE TRANSLATORS Computer Identity CDC 1604 CDC 1604 FORTRAN 60 1959 FORTRAN 63 1963 Date 243:]86.100 • STANDARD EDP _ REPORTS CDC 1604·A Program Translator FORTRAN·63 PROGRAM TRANSLATOR: FORTRAN·63 § 186. .12 .1 GENERAL .11 Identity: . 12 Description The FORTRAN-63 program is designed to run under control of the CO-OP Monitor and automatic buffering on card and printer output is provided by the system . . FORTRAN·63. Publication No. 514. The FORTRAN -63 translator operates on both the CDC 1604 and 1604-A computers, and provides a tape output for use under the CO-OP Monitor System. No limit on the various storage tables is imposed by the translator. A single push-down type of storage allocation is used, and if the entire area allocated to table storage in core memory is actually filled, then a scratch tape is used to hold the overflow. This technique allows freedom from counting the entries of particular tables and gives good utilization of storage during the compilation. Description (Contd.) .13 Originator: · Control Data Corporation. .14 Maintainer: · Control Data Corporation. .15 Availability:. · January, 1963 for CDC 1604. April, 1963 for CDC 3600. .2 INPUT .21 Language Analyses are made during compilation to determine: 1. The flow throughout each DO loop. 2. Any possible simplification of each arithmetic expression by the removal of common subexpressions. 3. Whether subscript modification is dependent on input data at object time. (If so, a small generator program is operated at object time to determine modification methods.) During the running of a FORTRAN-63 program, -some 3,000 locations are taken up by the CO-OP Monitor, FORTRAN-63, resident programs, etc. The FORMAT statements are used interpretively, being processed each time an input or output occurs. Beyond this and the subscript modification mentioned above, no translation occurs at object time. An interesting change in the translating technique is the treatment of multisubscripts. Instead of these subscripts being computed each time they are used (which may involve tWo multiplications and an addition), the basic value of each subscript combination is stored and modified each time an alteration to one of its components is made. This modification only involves one multiplication or one addition, and is thus considerably shorter tIui.n the time involved in anyone evaluation of a single subscript. The overall effect of this depends on the number of times a subscript value is used, as opposed to the number of times its value changes whether or not it is actually used. In straightforward, lightly branched, comparatively short subprograms there will almost always be a gain in using this subscripting method. In other cases the gain is more problematical, and losses are possible (see paragraph .533). © .211 Name: .212 Exemptions: . 22 Form .221 Input media: .23 · FORTRAN-63. · none . · magnetic tape, cards, paper tape. Size Limitations .231 Maximum number of source statements: .232 Maximum size source statements: .233 Maximum number of data items: · no limit (A scratch tape is used if necessary.) · 660 characters. · no limit (A scratch tape is used if necessary.) .234 Others The following tables are contained in storage. The total amount of storage allocated to tables must be used up prior to the use of a scratch tape to augment this space. However there is no limit as to how much space any table or group of tables may take, provided there is room in internal storage. 1. Declared Identifier List. An entry is made for each unique identifier appearing in a TYP2, COMMON, SUBROUTINE, FUNCTION, EQUIVALENCE, or DATA statement. Associated with the entry are the definition and properties associated with the identifier; e.g., its mode, size, dimenSionality, etc. 2. Index Variable List. An entry is made for each unique identifier appearing in a standard index function (given below). 1962 by Auerbach Corporation and BNA Incorporated 12/62 243: 186.234 § CDC 1604-A 186. .432 Fast unoptimized translate:. . . . . . no . . 234 Others (Contd.) .433 Short translate on 3. Index Function List. An entry is made for each unique index function, in the form: i *l\ i + j * l\ j + k * l\ k, where i, j, k are the subscript variables associated with an array indentifier and l\ i, l\ j, l\ k are the corresponding multipliers. 4. List of Constant Values. An entry is made for each unique number (converted to a common base) appearing in the source code. 5. Arithmetic Statement Function List. An entry is made for each identifier used to define an arithmetic statement function. 6. Local Identifier List. An entry is made for each identifier not appearing in the declared identifier list. 7. String List. This is an internal representation of the source statement. 8. Assembly List. An entry is made for each (assembly language) order generated. .3 OUTPUT .31 Object Program .312 Language style: .313 Output media; .32 machine code. magnetic tape, or cards. Conventions .321 Standard inclusions: .322 Compatible with: CO-OP Monitor Library. CO-OP Monitor. details not yet available. .33 Documentation: .4 TRANSLATING PROCEDURE .41 Phases and Passes Statements are compiled into a symbolic assembly language, a statement at a time, until a DO statement is encountered. Following this, and until the right bound of the 00 is encountered, a global analysis involving the flow, use of index registers, depth of nesting, etc., is performed. The processing into assembly orders then continues. Finally, an assembly into relocatable binary format is performed. .42 Optional Mode . 421 . 422 .423 .424 Translate: . . Translate and run: Check only: Patching: .425 Up-dating: . 43 .44 Bulk Translating: .45 Program Diagnostics: ....• .46 no. yes, using CO-OP Monitor. introduced in CO-OP Monitor. These are controlled in CODAP 1 Assembly Language. Translator Library .461 Identity: . . . . .462 User restriction: . .463 Form Storage medium: Organization: .464 Contents Routines: . . Functions: Data Descriptions: . . . Subprograms: CO-OP Monitor Library . general . · magnetic tape. · as loaded. · closed. · yes. · no. · yes. .5 TRANSLATOR PERFORMANCE .51 Object Program Space .511 Fixed overhead Space Name 2,000 words. CO-OP Monitor: FORTRAN 63 Resident 40 words. .512 Space required for each input-output file: 70 words (BCD) 500 words (Binary files). 300 words (mixed BCD and binary). .513 Approximate expansion of procedure: ? . 52 Translation Time: . 53 Optimizing Data · details not yet available . .531 Explicit:. . . . . . . BUFFER IN, BUFFER Ou'! statements. .532 Implicit: 00 loops should be used to give the advantage of I. R. modification. No more than 5 00 loops should be nested. Mixed mode expressions within a main loop should be examined for possible simplification. .533 Automatic • Common subexpressions are removed from any single expression and only evaluated once . • Subscripting is done by reference to a special entry for each unique subscript, irrespective of how many times it appears in the program . When any variable used in any subscript is changed, each entry is conditionally updated . Special Features . 431 Alter to check .... only: 12/62 yes. via CO-OP monitor . yes. anyone subprogram can be recompiled separately. no. restricted program: . . . . no. • Three output buffers, one'for each Channel, are maintained in storage for use with card or printer equipment, 243: 186.540 PROGRAM TRANSLATOR: FORTRAN-63 § 186 . . 54 Object Program Performance Type Elementary algebra: Complex formulae Deep nesting Based on constants: Based on variables: Heavy branching: Complex subscripts With use of style rules: Written directly: Data editing: Overlapping operations' With magnetic tapes: With card input With card or printer output: Time Space unaffected increased .6 COMPUTER CONFIGURATIONS .61 TranslatingComEuter .611 Minimum configuration: • unaffected. increased. • 612 Larger configuration advantages: unaffected unaffected. doubled doubled. .62 increased increased. .621 Minimum configuration: .622 Usable extra facilities: unaffected doubled (* *) unaffected unaffected. doubled. (* *). unaffected. BUFFER IN, unaffected. OUT"can be used to obtain unaffected performance unaffected unaffected. one buffer per channel available. unaffected. (* *) Analyst's estimate, provided as a guide only. © CDC 1604 Computer. 1 tape. 1 input and 1 output medium . larger programs can be translated. Target ComEuter CDC 1604 Computer. magnetic tapes, (1607, 1608, or 606). cards via CDC 1605, 1610, 1617or1609. CDC 1612. .7 ERRORS, CHECKS AND ACTION: . . • • information not yet available. .8 ALTERNATIVE TRANSLATORS Computer Identity Date CDC 1604 CDC 1604 FORTRAN 60 FORTRAN 62 1959. 1962. 1962 by Auerbach Corporation and BNA Incorporat~d 12/62 243: 191.1 00 .STI'OIRO _ EDP CDC 1604-A Operating Environment Machine Code REPORTS OPERATING ENVIRONMENT: MACHINE CODE §l91. .1 GENERAL . 11 Identity: co-op Index, July, 1962 . (program numbers are quoted in the body of the text.) .12 Description: .511 Tracing:. . . . . . . available for every, or each specifically quoted instruction, address, or jump . Output on magnetic tape or paper tape. CO-OP Program 134 or 103. .512 Snapshots: . . see above (.511). .52 Post Mortem: .6 OPERATOR CONTROL: . . . . . There are two operating systems available with the CDC 1604-A: the Three Phase Automonitor, and the CO-OP Monitor. Apart from these a number of unintegrated routines exist, which provide an operating environment for a user not wishing to use the other systems. The advantage of such an approach is the ability to' use the repertoire of routines in the library, many of which are not compatible with the monitors without modifications. .13 Availability: via CO-OP Users Group. .14 Originator: issued by CO-OP. .15 Maintainer: CO-OP Users Group. . 16 First Use: . 1960 onwards. .2 PROGRAM LOADING .21 Source of Programs .211 Programs from on-line libraries: .212 Independent programs: . . . . magnetic tape. Library subroutines: . only with specific systems (see Operating Environments, CO-OP Monitor and Three Phase Automonitor). . 23 Loading Sequence: . . . manual sequencing of card decks, paper tapes or magnetic tapes. .4 HARDWARE ALLOCATION: RUNNING SUPERVISION: .5 PROGRAM DIAGNOSTICS .51 J)ynamic LOGGING: .8 PERFORMANCE .81 System Requirements .811 Minimum configuration: . . . . . . . . 812 Usable extra facilities: . . . . . .813 Reserved equipment: magnetic tape. paper tape. .22 .3 .7 dumps onto magnetic tape or CDC 1612 printer in various formats, induding "restorable, " "listable, " "card image, " "binary, " "octal, " or "decimal. " CO-OP Programs 049, 071, 066, 109, 136, 024, 025. as incorporated in user's program. as incorporated in user's program . any CDC 1604- A . all. (a) CO-OP loader uses 659 location. (b) traces use 666 locations plus "director. " (c) restorable dump uses 55 locations. (d) other dumps use from 151 to 853 locations . .82 System Overhead: none. .83 Program Space Available: .... variable, see .813 above . .84 as incorporated in user's program. Program Loading Time: . as incorporated in user's program. .85 using CO-OP loader from magnetic tape approximately 60 + O. 0002 (I + 2D) seconds; where I is the number of instructions, D is the number of data items. (* *) Program Perform. . negligible overhead. ance: @ 1962 by Auerbach Corporation and BNA Incorporated 10/62 243: 192.1 00 _STANDARD II EDP CDC 1604-A Operating Environment CO-OP Monitor REPORTS OPERATING-ENVIRONMENT: CO-OP MONITOR § 192. .12 .1 GENERAL .11 Identity: . . . . . . . . CO-OP Monitor. . 12 Description The MCS contains a set of routines to control inputoutput transfers. They include tests for logical consistency of control linkage requests (e. g., that rewind operations apply only to magnetic tape units and not to other I/O devices) and translation between data codes (e. g., data prepared in column- binary for a device requiring row-binary) but no radix conversion. The programmer must provide for hardware error control. A large variety of routines are included to cover the various input-output formats. Simultaneous operations are still program dependent. The CO-OP Monitor is a system for run-to-run control of programs on a 1604. Multi-running of programs is not possible. The monitor works with any configuration of I/O equipment and can operate at several levels. The highest level (level 1) is the Master Control System (MCS). The next level (level 2) is usually the CO-OP Control System (CCS). At level 3 there are the production programs, or program translators. Routines that are to be run in the system must be prepared with the special control linkage routines to communicate with the MCS, and must have control data available for CCS (instead of direct instructions) for such tasks as input-output, interruptions, and loading. The programs produced by CODAP- 1 (see Section : 172) conform to the se requirements. The system operates under the control of special control cards, occasionally supplemented by the operator's use of the typewriter. Programs can be accepted from input devices, or can be requested from a library tape. In addition to the dumps at termination of a program, CCS provides snapshots specified by control cards that are inserted at load time. The CCS can also provide an index of allocated storage locations so that absolute dumps can be interpreted by the programmer. The system requires: a standard input device for control cards, and sometimes data and programs; a standard output device to record dumps and snapshots; a typewriter for short coded messages to the operator; and an accounting output device for longer messages to the operator and entries to a log. The accounting device is usually the paper tape punch. There is also a library tape which contains operational routines and subroutines, including CODAP-1, FORTRAN-62, and later COBOL and CXA (Control Data Extended Algol). The MCS is a run-to-run supervisor which can transfer control to one "level 2" program after another. Usually the "level 2" programs are control routines that arrange smooth intra-run flow. They control abnormal run terminations and provide a flexible means of conditionalload-and-go or translate-and-run procedures. In addition, they provide an automatic procedure for pre-loading tapes and internal storage. The MCS provides a systematic allocation of inputoutput units and also of storage by an allocator/loader which sets linkages between independently prepared routines. The MCS provides an automatic termination of runs that exceed their time limit or output volume limit by a fixed tolerance. At each termination, the CCS provides alternative degrees of post-mortem dumps and an optional preset entrance to a short, limited termination routine provided by the user. The MCS controls all interrupts, but parameters specifying the type of interrupts and the routines required after an interrupt must still be incorporated in each program. The MCS provides for the housekeeping of requesting interrupts and of determining which interrupt has occurred. © Description (Contd.) The overall operating efficiency of the CO-OP Monitor System is difficult to assess. Running intra-run overheads are strongly dependent on the style of the level 3 program. The overheads are probably low relative to hand coding except for the input-output transfer and code translation control routines. The intra-run overheads are also likely to be low compared to manual operation, unless con'siderable tape searching is necessary. . 13 Availability: in CDC 1604 version . • 14 Originator: . Control Data Corp . assisted by a CO-OP subcommittee. .15 Maintainer: Control Data Corporation. .16 First Use: . July, 1962. .2 PROGRAM LOADING . 21 Source of Programs .211 Programs from on-line libraries:. . . . . . . loaded from magnetic tape files as called for in table used by relocatable loader. 1962 by Auerbach Corporation and BNA Incorporated 10/62 243: 192.212 § CDC 1604-A 192. .32 .212 Independent programs: from magnetic tapes in card format. from paper tape in card format. from cards in card format. from magnetic tape in binary relocatable format. . 213 Data: . . . . • . . . . . via any input device, under the control of I/O routines incorporated in the MCS, whenever called from individual program. . 214 Master routines:. . . . the Master Control Routine is called in from magnetic tape by a button on the Console. Further subsidiary master routines are called in by the Job Sequencer using the MCS control record. .22 . 23 Library Subroutines: Loading Sequence: . 321 Initial assignment: . .322 Alteration: . • .323 Reassignment: RUNNING SUPERVISION . 41 Simultaneous Working: . controlled by standard routines incorporated in MCS . .42 Multi - pr08!amming:. . not presently available. .44 Errors, Checks, and Action Error Check or Interlock Loading input error: program check Allocation impossible: program check In-out error - single: In-out error - persistent: Storage overflow: Invalid instructions: Program conflicts: Arithmetic overflow: program check program check not possible. not possible. some I/O checks. hardware/program check. Underflow: hardware program check. no check. program check. no check. loaded from on-line magnetic tape library. normally each job is processed as loaded. The operator can also initiate by instructions to: (a) Abandon present job and start on next job. (b) Re-start this job. (c) Start job XXX. During processing, operator can instruct termination of GO-OP Monitor run either (1) at end of present job, (2) at end of present job, or (3) at end of job XXX. .3 HARDWARE ALLOCATION .31 Storage 10/62 assigned for each job based on Available Equipment Table. not available. by operator typed into Available Equipment Table . .4 Invalid operation: Improper format: In valid address: Reference to forbidden area: .45 .311 Sequencing of program for movement between levels: . .312 Occupation of working storage: Input-Output Units not necessary. determined by relocatable binary loader on basis of RANGE (first and last words) statement for each subprogram; and requirement of MCS. Action record fact on log and on "communication to operator medium... proceed to next job. not specified. not speCified. depends ·on routine. determined by Interrupt routine being used. no check. Restarts. .451 Establishing restart points: . . . . . . . no special provision, can use: (a) automatic, set, and dump on abnormal exit from program. (b) own coding initiating dump at programmer selected interval. .452 Restarting process: .• (a) use of dump as new program. (b) manual intervention by operator to recover control in case of total system failure. OPERATING ENVIRONMENT: CO-OP MONITOR § 192. . 632 Change of normal progress: . . .5 PROGRAM DIAGNOSTICS .51 Dynamic none. up to 10 snapshots in any one program. . 511 Tracing: .512 Snapshots: .52 243: 192. 500 Post Mortem: .7 LOGGING .71 Operator Signals: .72 Operator Decisions: . . listed on typewriter and "comment from operator" medium. .73 Run Progress: listed on typewriter and "accounting medium. " .74 Errors: listed on typewriter and "comment to operator medium. " output via typewriter and/or loud speaker . .75 Running Times: listed on typewriter and "accounting medium. " listed in Operator's Manual, if standard. as required by programmer, if own coding message . .76 Multi-running Status: not applicable. .8 PERFORMANCE .81 System Requirements . . . . . dumps taken automatically in case of abnormal exit from routine. Dump formats range from record of console conditions to full dumps in various formats. .6 OPERA TOR CONTROL .61 Signals to Operator .611 Decision required by operator: . . . . . . 612 Action required by operator: . . . . . . 613 Reporting progress of run: . . . . . . amendment of Available Equipment Table, or instructions to ignore some or all jobs still awaiting processing . listed on typewriter and "comment from operator" medium. .811 Minimum configuration: 4 tape CDC 1604 system. .812 Usable extra facilities: all except reserved Jump Keys . . 813 Reserved equipment: ? words. , all Jump Keys. option to mask out arith.62 Operator's Decisions: . via keyboard, in accordmetic errors not ance with action described available. in Operator's Manual or by previous type out. . 82 System Overhead: ? .63 Operator's Signals .83 Program Space Available: . . ? carriage return on type.631 Inquiry: . . . . . . writer with standard message following. This can .84 Program Loading Time: ? only produce the Available Equipment Table. .85 Program Performance: ? end of job and time, placed on "comment to operator" medium and "accounting medium. " © 1962 by Auerbach Carp oration and BNA Incorporated 10/62 243: 193.1 00 CDC 1604-A Operating Environment AUTOMONITOR OPERATING ENVIRONMENT: THREE PHASE AUTOMONITOR § 193 • • 123 LIBRARY EDIT ROUTINE •1 GENERAL • 11 Identity:........ Three Phase AUTOMONITOR System. · 12 Description The LIBRARY EDIT ROUTINE is used to prepare, copy, or update the library tape used in the AUTOMONITOR system. • 124 SYMBOLIC ASSEMBLY ROUTINE · 121 General AUTOMONITOR differs from the CO-OP Monitor by its inability to provide for mixed, production and assembly runs, or for a choice of subsidiary control systems. There is no compatibility betwe~n the outputs produced by AUTOMONITOR and those required by the CO- OP Monitor. The following commentary is a rewrite of the official description. The Three Phase AUTOMONITOR is a programming system for the 1604 computer. It provides for the batched assembly and the execution of programs prepared in symbolic assembly language. A Simple, but flexible, system of buffered input-output is incorporated. The execution of batched jobs is handled in three phases: Phase one in which the stacked input for all jobs is translated into a binary input tape; phase two in which each job is executed sequentially using the binary input tape and producing a binary output tape; and phase three in which the binary output tape is translated into a BCD listable tape. Batched assemblies may also be handled by the system. The assembly routine used is the CODAP assembly program. The system handles assembly and execution runs separately and does not permit intermixing. The system is maintained on a library tape that contains the system' s six main routines and all associated subroutines. The first file on this tape is reserved for the six routines which are described briefly as follows (paragraphs • 122 to • 127): • 122 SUPERVISOR The SUPERVISOR, first routine on the AUTOMONITOR library tape, distinguishes between assembly or execution runs and brings the correct processing routine into memory. SUPERVISOR also will respond to certain key settings and call in the Library Edit routine to prepare a new library tape, or it can initiate an execution restart procedure. © The SYMBOLIC ASSEMBLY ROUTINE (CODAP) converts the programmer's symbolic notation into machine language and binary coded decimal (BCD), and prepares two magnetic tapes. The machine language tape can be used to produce either binary or octal cards and the BCD tape is used to provide off-line symbolic assembly listings. The performance times are similar to those listed under CODAP- 1. • 12~ INPUT TRANSLATOR The INPUT TRANSLATOR (INTRAN), phase one, receives an input card image on a tape. This tape is prepared off-line and contains all the jobs to be run in one batch. INTRAN reads this tape, performs all needed conversions, and writes a binary tape (referred to as binary input tape) of uniform record length. This binary input tape contains the information together with flags denoting the type and amount of information. All jobs in the batch are processed by INTRAN before control is turned over to the next phase, INTRAN is only loaded once per batch processing. • 126 EXECUTION COORDmATOR The EXECUTION COORDINATOR (EXEC), phase two, receives control from lNTRAN and uses as input the binary input tape prepared by INTRAN. EXEC loads a program into memory and turns control over to it. If input of data is reqUired during execution, the programmer uses a calling sequence to obtain data from the binary input tape through EXEC. It is also possible, by use of the input calling sequence, to overlay a program in core. In this case, the programmer would furnish a transfer address. Three types of output are available to the programmer during the execution phase: core dumps, general purpose output, and custom output (output according to FORTRAN-type format statements). All input and output during the execution phase is on an interrupt basis. EXEC sets up parts of the store as input and output buffers (three of each). Each internal input buffer is filled from the binary input tape as soon as all the information previously contained in that buffer has been processed by EXEC. When the programmer calls for output, EXEC writes the output in pure binary into one of the internal buffers, adding flags which describe the amount of output and the type of conversion and format. When a buffer has been filled, EXEC writes the information contained therein as one record on a binary tape (here called binary output tape). 1962 by Auerbach Corporation and BNA Incorporated 10/62 243:193.126 § CDC 1604-A 193. · 126 EXECUTION COORDINATOR (Contd.) OUTPUT BUFFER I OUTPUT 1----:>1 BUFFER f------;~ 2 OUTPUT BUFFER 3 Since the program being executed has control of the computer during execution, it is not inconceivable that a part or all of EXEC may be destroyed. If this occurs, an execution restart procedure is available. .128 Equipment (Contd.) However, if more than one 1607 is available, it may be used by the programmer through a special set of calling sequences. • 127 OUTPUT TRANSLATOR The minimum equipment configuration necessary.for the AUTOMONITOR is as follows: The OUTPUT TRANSLATOR (OUTRAN) phase three, receives control after the last program of a batch has been executed. OUTRAN reads the binary output tape prepared by EXEC and performs the necessary conversions. The type of conversion is terminated by the flags which are furnished with the data. A BCD listable tape is prepared for off-line listing with identifying information accompanying each job. On-line - Control Data Corporation 1604 Computer and 4 1607 or 606 Tape Units. (More may be used.) Off-line - Card reader, card punch, and line printer. Card-to-tape, tape-toprinter, and tape-to" punch capability. · 128 Equipment Certain programming conventions such as reserving the stop instructions and interrupts must be followed when using the AUTOMONITOR. Most external function instructions, particularly those involving tapes, are reserved for the use of the AUTOMONITOR. The AUTOMONITOR uses all the tapes on one 1607 and also monopolizes the 1607 input and output channels. .13 Availability:...... presently available in 1604 version. . 14 Originator: • Control Data Corporation. .15 Maintainer: Control Data Corporation. .16 First Use: • April, 1961. I 10/62 @ 1"-A-U-ER-BA-CH-' 243:201.100 .STANOARO II EDP CDC 1604-A RE"RES System Performance SYSTEM PERFORMANCE § 201. .113 Timing basis (cont'd) .1 GENERALIZED FILE PROCESSING .11 Standard File Problem A .111 Record sizes Master file: Detail file: • Report file: . . 112 Computation: . .113 Timing basis: the files and means that all records have to be physically moved from one area to another in storage. In other problems with different requirements and a low activity, such moving might be costly. It would then be possible to use dynamic control of the buffer control words, together with cycle storage allocation, in order to avoid such moving. 108 characters. 1 card. lline. standard. using estimating procedure outlined in Users Guide, 4:200.113 .114 Graph: . • . • . . . . . see graph below . .115 Storage space required Configuration VI. B: . 8, 000 words. Configuration VII. B:. 8,000 words. Configuration VIII. B:. 8,000 words. A straightforward approach was made to the problem with input and output areas being kept separate. This facilitates handling insertions and deletions to 2 1.0 7 ~ ~ 4 Time in Minu tes to Process 10,000 Master File Records 2 V VII~ ~ -/' ~ll Band VUl B ~ ~ ..... ./ l1i:t 0.1 7 4 2 0.01 7 2 0.001 0.0 0.1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record Roman Numerals denote Standard Configurations © 1962 by Auerbach Corporation and BNA Incorporated 10/62 243:201.120 § CDC 1604-A 201. · 12 Standard File Problem B · 121 Record sizes Master file: Detail file: . Report file: . · 122 Computation:. .123 Timing basis: 54 characters. 1 card. 1 line. standard. using estimating procedure outlined in Users' Guide, 4:200.12. .123 Timing basis (cont'd) A straightforward approach was made to the problem with input and output areas being kept separate. This facilitates handling insertions and deletions to the files and means that all records have to be physically moved from one area to another in storage. In other problems with different requirements and a low activity, such moving might be costly. It would then be possible to use dynamic control of the buffer control words, together with cycle storage allocation, in order to avoid such moving. • 124 Graph: . . . . . . . . . see graph below. 10.0 7 4 2 '1\\ 1.0 7 ~ 4 Time in Minutes to Process 10,000 Master File Records 7 .JIll' .- ..--- ,,- a~ ~ / IL V ---- /1 2 0.1 - 'B ~ - ;/ i ~'\. VIII B 4 2 0.01 7 4 2 0.001 0.0 0.1 0.33 Activity Factor Average Number of Detail Records Per Master Record Roman Numerals denote Standard Configurations 10/62 1.0 243:201.130 SYSTEM PERFORMANCE § .133 Timing basis (cont'd) 201. .13 This facilitates h3.nciling insertions and cteletions to the files and means that all records have to be physically moved from one area to another in storage . In ·other problems with different requirements and a low activity, such moving might be costly. It would then be possible to use dynamic control of the buffer control words, together with cycle storage allocation' in order to avoid such moving . Standard File Problem C • 131 Record size s 216 characters. 1 card. 1 line. standard. using estimated procedure outlined in Users' Guide, 4:200.13. Master file: Detail file: . Report file: . .132 Computation: • . 133 Timing basis: .134 Graph: . . . . . . . . . see graph below. A straightforward approach was made to the problem with input and o~tput areas being kept separate. 10.0 7 4 VIB _ 2 ---- 1.0 7 y, Time in Minutes to Process 10,000 Master File Records ~ndVUIB " .- -' '1~/ 4 - /' ~ VIII B 2 0.1 7 4 2 0.01 7 4 2 0.001 0.0 0.1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record Roman Numerals denote Standard Configurations © 1962 by Auerbach Corporation and BNA Incorporated 10/62 243:201.140 CDC 1604-A § 201. • 14 . 142 Computation:. .143 Timing basis: trebled • using estimated procedure outlined in Users' Guide. 4:200.13. .144 Graph: . • • • . . . . . see graph below. Stan,cla.rd File Problem D 141 Record sizes Master file: Detail file: . Report file: . 108 characters. 1 card. lline." 10.0 7 4 2 .---- VIB 1.00 7 ..... Time. in Minutes to Proct!ss 10, 000 Master File Records 2 - ~ ./ 7 V" 4 ~ndVlllB / - r-~\\-~~ V~~ 0.1 7 4 2 0.01 7 4 2 0.001 0.0 0.1 0.33 Activity Factor Average Number of Detail Records Per Master Record Roman Numerals denote Standard Configurations 10/62 1.0 243:201.200 SYSTEM PERFORMANCE § 20l. 8 characters • using estimated procedure outlined in Users' Guide, 4:200.213. • 214 Graph: . . . . . . . . . see graph below . • 212 Key size:. . . ,.213 Timing basis: .2 SORTING . 21 Standard Problem Estimates .211 Record size: . • . . . . 80 characters. , / ,/ / l't VIIU 11.0 / V V / V Time in Minutes to Put Records Into Required Order I~ 0.1 'tit / / , 'I' ~ ~ /vn and VIn B f , 'I / ~ / 1/ 'I' 0.01 , / V 'I 0.001 1,000 100 10,000 100,000 Nun " ~r of Records Roman Numerals denote Standard Configurations © 1962 by Auerbach Corporation and BNA Incorporated 10/62 CDC 1604-~ 243:201.300 § 20l. .312 Timing Basis: .3 MATRIX INVERSION . 31 Standard Problem Estimates . using estimating procedure outlined in Users' Guide, 4:200.312 . • see graph below . . 313 Graph: . . . .311 Basic Parameters: . • • general, non-symmetric matrices, using floating point to at least 8 decimal digits. 100.00 7 4 1. 2 V 10.00 L 7 I I I 4 I 1 2 Time in Minutes for Complete Inversion ~ 1.00 7 IJ 4 11 IJ 2 II I) 0.10 7 I I 4 I 2 / 0.01 2 4 7 10 2 Size of Matrix 10/62 4 7 100 2 4 7 1,000 243:201.320 S.YSTEM PERFORMANCE .322 Timing Basis: . . . . § 20l. .32 CO-OP Library. Times shown are times for one iteration . Fl LMSD MATIN Times . 321 Basic Parameters: . . . general, non-symmetric matrices, using floating point to at least 8 decimal digits. .323 Graph: . . . . . . . . see graph below. 100.00 7 4 2 I J 10.00 I 7 I I I 4 I II Time in Minutes fOri Complete Inversion 1.00 7 I I 4 J 'I 2 / 0.10 I II 7 4 I J 2 I I If 0.01 2 4 7 10 2 4 7 100 2 4 7 1,000 Size of Matrix © 1962 by Auerbach Corporation and BNA Incorporated 10/62 243:201.400 § CDC 1604-A 201- S fifth-order polynomials . S divisions . 1 square root. using estimating procedure .413 Timing basis: outlined in "Users , Guide 4:200.413 . .414 Graph: . . . . . . . . . Configuration VI B; paper tape input, typewriter output, floating point machine coding. • 412 Computation:. •4 GENERALIZED MATHEMATICAL PROCESSING .41 Standard Mathematical Problem A Estimates . 411 Record sizes: . . . .. 10 signed numbers, avg. sizeS digits, max. size 8 digits. Configuration VI B; Single Length (Ii digit precision); Floating point. R = Number of Output Records per Input Record Time in Milliseconds per Input Record" I I~ 100 II' , -' .I ~ P 10 V ./ ~ -? ~i-" ' ~'\- ~. I,; ~ ~.'\-. ~~ 1 0.1 1.0 10 C, Number of Computations per Input Record 10/62 100 243:201.415 SYSTEM PERFORMANCE § 201. .415 Graph: Configuration VII B; paper tape input, typewriter output, floating point machine coding. Configuration VII B; Single Length (11 digit preCision); Floating point. R = Number of Output Records per Input Record 1000 Time in Milliseconds per Input Record ~ 100 -" // L.,...oo ~i-' 10 P V' V ~ " ~ 100" ",. . .,", " ....~. "''\., ~~ ~~ " 1 0.1 1.0 10.0 100.0 C, Number of Computations per Input Record © 1962 by Auerbach Corporation and BNA Incorporated 10/62 CDC 1604-A 243:201.416 § 201. Configuration vnr B; paper tape input, typewriter output, floating point machine coding. .416 Graph: Configuration VIn B; Single Length (11 digit precision); Floating point. R = Number of Output Records per Input Record 1000 Time in Milliseconds per Input Record ~ 100 ~ ~'" .., ..A ./7 ~ 9 10 - -R::O. 1 --==-R ::G.o l .... ~II'" - ", ~ .... r ..".. ~ V / -- ~ 1 0.1 1.0 10.0 C, Number of Computations per Input Record 10/62 100.0 SYSTEM PERFORMANCE § 243:201.500: 201. .512 Computation:. .5 GENERALIZED STATISTICAL PROCESSING . 51 Standard Statistical Problem A Estimates augment T elements in cross-tabulation tables . . 513 Timing basis: using estimating procedure outlined in Users' Guide, 4:200.513 . .514 Graph: . . . . . . . . . see below . . 511 Record size: . . . . . . thirty 2-digit integral numbers. 10,000 1,000 Time in Milliseconds per Record 100 - L 10 VIB / lL Ii' " ~ / ~ / VII B, VIII B 1 I I 1 10 100 1,000 T. no of Augmented Elements Roman Numerals denote Standard Configurations © 1962 by Auerbach Corporation and BNA Incorporated 10/62 24.3:211.101 CDC 1604·A Physical Characteristics CDC 1604·A PHYSICAL CHARACTERISTICS © 1962 by Auerbach Corporation and BNA Incorporated 10/62 CDC 1604-A 243:211.102 CDC 160,4-A PHYSICAL CHARACTERISTICS Central Computer and Console Adapter CDC 1604 CDC 1605 CDC 1607 68)( 28 )(89 43 )(20)(48 Weight, lbs. 3,450 Maximum Cable Lengths Unit Name Magnetic Tape Control Control Uni t Unit Card Unit Control Unit Printer CDC 1608 CDC 1609 CDC 1610 CDC 1612 68)(28X68 43 )(20X48 51 )(40)(26 43 )(20 )(48 56)(72)(31 575 2,500 650 755 600 890 --- --- --- --- --- --- --- Temperature, of. --- --- --- --- --- --- --- Humidity, "I. --- --- --- --- --- --- --- IDENTITY Model Number Height X Width XDepth, in. PHYSICAL Storage Ranges Temperature, of. ATMOSPHERE Computer room temperature should not exceed 70°F. i I Working Ranges Humidity, "I. Heat Dissipated, BTU/hr. I I colputer room JumidHY shoJld be 40 to )0"1" 26,400 4,000 30,000 4,000 5,680 4,000 6,400 Air Flow, cfm. 3,000 800 3,000 800 800 800 --- Internal Filters Yes --- --- --- --- --- --- Nominal 208 208 208 208 208 208 208 208 115 117 Tolerance -- -- -- -- -- -- -- -- -- -- -- -- --- Nominal 400 60 400 400 60 60 Tolerance -- -- -- -- -- -- -- -- -- -- -- -- 208 208 208 Voltage ELECTRICAL LoadKVA 1Q/62 60 400 60 60 400 60 Cycles Phases NOTES 400 --- 3 3 3 3 3 3 3 3 3 3 3 1 1 8.0 1.2 2.0 0.9 2.0 2.4 2.0 0.9 2.0 0.9 2.0 0.9 1.9 Where two types of power are shown for a unit, both are required. I AUERBACH 11Bn 243:211 ~ 10.3 CDC 1604·A CDC 1604·A PHYSICAL CHARACTERISTICS-Contd. Unit Name Card Reader Magnetic Tape Unit IDENTITY Model Number CDC 1617 CDC 606 HeighfX Width XDepth, in. 4lX30X19 72 X28 X33 210 800 --- --- Tempe"rature, of. --- --- Humidity, '7'. --- --- Temperature, of. --- --- Humidity, '7'. --- --- Heat Dissipated, BTU/hr. 708 --- Air Flow, cfm. 100 --- Internal Filters --- --- 115 115 Toleranc e '7'. 5 5 Nominal 60 60 --- --- Phases and Lines --- --- Load KVA 0.21 Weight, Ibs. PHYSICAL Maximum Cable Lengths Storage Ranges Working Ranges ATMOS· PHERE Nominal Voltage ELECTRICAL Cycles Tolerance '7'. 3.0 NOTES © 1962 by Auerbach Corporation and BNA Incorporated 10/62 243:221.101 ·STA"ARD EDP • _ REPORTS CDC 1604-A Price Data PRICE'DATA • 221. PRICES IDENTITY OF UNIT CLASS Name No. Central Processor 1604-A Basic Computer with: 8, 192 words of core storage 16, 384 words of core storage 32,768 words of core storage Monthly Rental Monthly Maintenance $ $ 24,000 26,500 31,600 Maintenance contracts are individually negotiated Purchase $ 790,000 870,000 1,030,000 Price includes following features: Fixed and floating point 9.r~thmetic Indirect addressing Console Motor-generator Paper tape reader and punch Typewriter Included in Basic Computer Storage Input-Ou~ut 1609 1617 1612 606 16.i.5 Card Reader and Punch Card Reader Line Printer Magnetic Tape Unit Magnetic Tape Control Unit © 1,175 580 1,840 825 1,980 1962 by Auerbach Corporation and BNA Incorporated 47,000 22,500 73,700 36,000 66,000 10/62 L/ CDC 160-A Control Data Corporation I\ '-, /' l ( "--, AUERBACH INFO, INC. PRINTED IN U. S. A. CDC 160-A /- Contr-ol Data Corporation AUERBACH INFO, INC. PRINTED IN U. S. A. 244:001.001 CDC 160-A Contents CONTENTS 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Introduction:.... Data Structure: System Configuration Configuration I; Card System: Configuration II; 4-Tape Business System: Configuration III; 6-Tape Business System: Configuration VI; 6-Tape Business/Scientific System: Configuration IX; Desk Size Scientific System: Configuration X; Punched Tape/Card Scientific System: Internal Storage Core Storage; Basic Core Storage: . . . . Core Storage; 169 Auxiliary Memory Unit: Auxiliary Storage; 8951 Magnetic Drum Central Processor 160-A Central Processor: . . Arithmetic Unit (fixed point): 168-1 Console: ......... . Input-Output; Punched Tape and Card 350 Paper Tape Reader: BRPE-11 Paper Tape Punch: 167 Card Reader: 170 Card Punch: Printers 1612 Printer System: 166-2 Line Printer: . Magnetic Tape 603 Magnetic Tape Unit: 162-1 Controller: 606 Magnetic Tape Unit: 162- 2 Controller: Input-Output; Other 161 Typewriter: 1610-A Card Reader- Punch Control: ruM 088 High Speed Collator: ruM 533 Card Read Punch: .... ruM 407 Accounting Machine/Line Printer: ruM 523 Gang Summary Punch: Simultaneous Operations: Instruction List: . Coding Specimens OSAS/OSAS-A: FORTRAN-A: • 16O-A FORTRAN: INTERFOR: • SIC OM: . . • AUTOCD MM: 244:011 244:021 244:031.1 244:031.2 244:031.3 244:031.4 244:031.5 244:031.6 244:041 244:041 244:042 244:051 244:052 244:061 244:071 244:072 244:073 244:074 244:081 244:082 244:091 244:091.4 244:092 244:092.4 244:101 244:102 244:102.12 244:102.12 244:102.12 244:102.12 244:111 244:121 244:131 244:132 244:133 INA 244:134 244:135 244:136 INA ... Information not available © 1963 by Auerbach Corporation and BNA Incorporated 5/63 .244:001.002 c;DC 160-A CONTENTS (Contd.) 14. 15. 16. 17. 18. 19. 20. 21. 22. 5/63 Data Codes Card Input-Output: . Printer: •• BCD: • • • . • • . Binary: . . . . . . Typewriter Input-Output: Printer Collating Sequence: Problem Oriented Facilities: • Simulation of Other Computers: • Sort 3X: • • • • . Data Transcription General: • • • . SIMO: • . • . • Peripheral Processing Package (PPP): Peripheral Processing Package (PPPP): Paper Tape Edit: • • . • • • • • OSAS- A Master Paper Tape Edit: Floating Point Arithmetic: Floating Point Functions: Radix Conversion: Binary Arithmetic: Matrix Inversion: Decimal Computations Programming System (BCK): Equation Solver: • • • • • Other: • • • • • . • • • Process Oriented Languages 160 FORTRAN-A: 160-A FORTRAN: • • • AUTOooMM: • • • • • Machine Oriented Language OSAS/OSAS- A: SICOM: •• INTERFOR: •• Translators OSAS/OSAS- A: 160-A FORTRAN : INTERCOM: • • • FORTRAN-A: . • • Operating Environment General: . . . • SlooM: •••••• System Performance Notes on System Performance: Worksheet Data: • . • . • • . Matrix Inversion; Standard Problem: Matrix Inversion; Standard Routine: Generalized Mathematical Processing: • Generalized Statistical Processing: Physical Characteristics: Price Data: . . . • . • • • • . • • 244:141 244:142 244:143 244:144 244:145 244:146 244:151 244:151.11 244:151.13 244:151.151 244:151.152 244: 151. 153 244: 151. 154 244:151.16 244:151.16 244:151.171 244: 151. 172 244:151.173 244:151.174 244: 151. 175 244:151.176 244: 151.177 244:151.178 244:161 244:162 244:163 244:171 244:172 244:173 244:181 244:182 244:183 242:182 (CDC 160) 244:191 ·244:192 244:201.001 244:201.011 244:201.31 244:201.32 244:201.4 244:201.5 244:211 244:221 244:011.100 DP CDC 160-A REPORTS Introduction INTRODUCTION § 011. The CDC l60-A system, essentially a CDC 160 with larger core storage and a single buffered input-output channel, is a solid-state desk-size computer oriented toward scientific applications which can also be used for off-line data transcription and as a satellite to larger systems. The basic system consists of the processor and NorIJlal input-output channel, 8,192 words of core storage with Buffer channel, and a fast paper tape reader and punch. Data transcriptions are effected by standard card-to-tape and tape-to-printer conversion subroutines, by SIMO (simultaneous card-to-tape and tape-to-printer), and by PPPP (a peripheral processing package which can perform four tape-to-printer operations and a card-to-tape operation simultaneously). The basic system rents for $2,250 per month. Core storage is supplied in from one to four modules, with each module containing two banks of 4,096 words. Cycle time for the core storage is 6.4 microseconds, and addition of a word in storage to the accumulator requires 19. 2 microseconds. Because the 12- bit address word can address only 4,096 locations, the l60-A requires a bank-control register to permit addressing of the entire core storage. Core storage can be expanded by addition of a Model 169 Auxiliary Memory Unit, which has a maximum capacity of 24,576 words. The Model 169 provides an additional buffered channel, usable only with the core store of the Model 169. Use of this channel permits an additional independent input or output transfer of data. An interrupt system is also provided with the processor; however, use of this feature in an integrated system is not emphasized in the manufacturer's literature. The processor performs single-address instructions sequentially on 12-bit words (11 bits plus sign bit) giving a significance of 3.3 decimal digits. Alphameric input and output is stored internally as one or two 6-bit BCD characters per computer word, and radix conversion on four- and six-bit decimal digits is performed by subroutines. Instructions are one or two words. Programming for the 160 series computers is complicated by the short computer word length. Instructions that reference operands in general storage must be two words long. The buffered channel supplied with the basic 160-A handles one input or output block transfer at a time. The basic l60-A therefore can perform computation or an input or output transfer on the Normal channel, while simultaneously transferring a block of data on the Buffer channel. Two card readers are available for the 160-A. The Model 167-2 reads 250 cards per minute, and the IBM 088 Collator, which is connected through the 1610- A Input-Output Control, reads 650 cards per minute. Two card punches are also available: the IBM 523, which operates under control of a Model 170 Card Punch Controller, and the IBM 533, which operates under control of.a l6l0-A Control. Both can punch 100 cards per minute. The fast paper tape reader and punch, which can be used only by the Normal channel, operate at 350 and 110 rows per second, respectively. Control Data offers two printers, the Model 166-2 buffered line printer, which prints either alphameric or numeric data at a rate of 150 lines per minute, and the 1612 Line Printer, which prints 500 alphameric and I, 000 numeric lines per minute. Two magnetic tape drives are available, the 603 Tape Units with 15,000 or 41,667 character per second transfer rates, and the 606 rape Units with 30,000 or 83,333 character per second transfer rates. The older 163 and 164 Tape Units are no longer being manufactured. The 160-A has an instruction repertoire of 134 instructions, most of which are variations of several basic instructions. These variations provide restricted relative or indirect modes of addressing. Floating point and multiple precision fixed point operations are © 1963 by Auerbach Corporation and BNA Incorporated 3/63 244:011.101 CDC 160-A INTRODUCTION (Contd.) § 011. performed by subroutines or optional hardware units. The central processor performs no parity checking on internal word transfers or on data transferred to and from peripheral devices. Longitudinal and transverse parity is checked by the magnetic tape units, and the processor must test for parity errors. Problem oriented facilities include subroutines for multiple precision arithmetic and data transcriptions, as well as sorting, matrix inversion, and a number of industrial design and statistical programs. The 160-A assembly language translator, OSAS-A, is the 160-A version of the 160 OSAS and offers a larger symbol table than OSAS. No macro instructions can be included, but library subroutines can be assembled with the source statements. Two floating point interpretive systems, SICOM and INTERFOR, are available for the 160-A. Both systems use four 160-A words to hold each data item and two storage words to hold each instruction. SICOM offers a large instruction repertoire, flexible input-output facilities, alphameric data handling capabilities, and a built-in trace mode. INTERFOR has a repertoire of only 22 instructions, most of which correspond directly to a limited group of machine language instructions in the large-scale CDC 1604 and 1604-A computers. The main feature of the INTERFOR system is an assembly routine that makes it possible to code source programs in.a convenient symbolic language; SICOM programs must be written in absolute numeric code. This INTERFOR feature permits 1604/1604-A floating point routines to be run on the 160-A if they include only the mnemonics accepted by the assembler. 160 FORTRAN-A, a version of 160 FORTRAN modified to operate on the 160-A, is currently available and can be used on systems with only punched tape input-output equipment. An improved system called 160-A FORTRAN is now in field test status. It will require at least two magnetic tape units for compilation. Both systems use restricted versions of the FORTRAN II language. The only significant FORTRAN II facilities not included in 160-A FORTRAN are the FUNCTION statement and double precision and complex variables. Both systems permit the use of Boolean statements and mixed arithmetic. Object programs produced by both FORTRAN systems are executed interpretively. Compile-and-run operation is possible with 160-A FORTRAN. AUTOCOMM is a COBOL-like programming system designed for pseudo-English coding of commercial data processing applications. An AUTOCOMM source program consists of a Data Section, which describes the files and items to be processed, and a Procedure Section, which describes the operations to be performed. The operation repertoire includes decimal arithmetic, multi-word transfers, alphabetic and numeric comparisons, format conversions, and editing. AUTOCOMM object programs consist largely of return jumps to a library of standard macro routines that implement the source statements. AUTOCOMM should be somewhat Simpler to learn and use than the COBOL language, but its facilities are considerably more limited than those of COBOL. SWAP, the 160/160-A users' group, publishes an updated list of routines and has defined the minimum SWAP computer as the basic paper tape system with basic core storage and no typewriter. Control Data offers program-controlled satellite operation of the 1604 or 1604-A system and the 160 or 160-A system. Either processor can transfer data to or from common magnetic tape units via a tape controller, or can set up a direct communication path between the systems by using the read and write data registers of the controller. These connections are set up under control of a program which can also test the status of the controller. The 1607 Tape Control with Ampex Tape Units was available earlier. At present, the 1615 Tape Control, which uses CDC 606 Tape Units, is offered for satellite operation. The satellite system is more a capability than an actual system; no manuals exist for the 1615 Satellite system, and no such system has been installed. The 160 and 160-A processors can transfer data to and from peripheral equipment of the new CDC 3600 computer, using the CDC 3681 Data Channel Converter. In addition, the CDC 160-A can operate with the 3681 Converter and CDC 3600 Computer in a satellite mode. Further information must be obtained from the manufacturer. 3/63 / 244:021.100 _STANDARD EDP _ REPORTS '- CDC 160/160-A - Data Structure DATA STRUCTURE § ,2 021. ,I STORAGE LOCATIONS Type of Information Name of Location Size Purpose or Use Word in storage: Row on punched tape: 12 bin 5 to 8 bin basic storage location, BCD or binaty character on punched tape, BCD or binaty character on punched tape, 1 Hollerith character or 1 binaty word, (tracks) Row on magnetic tape: 6 bits + parity Column on card: bit 12 rows INFORMATION FORMATS © 1963 Numeral: Octal digit: Number: Instruction: Block: by Auerbach Corporation and BNA Incorporated Representation 1 BCD digit on external medium, 3 binaty bits, 1 word of 11 bits plus sign bit, lor 2 words, group of words in core storage between 2 specified addresses, group of words on external medium, 3/63 244:031. 100 • STANDARD EDP • § CDC 160-A System Configuration REPORTS 031 . .1 SYSTEM CONFIGURATION CARD SYSTEM; CONFIGURATION I Deviations From Standard Configuration: paper tape equipment supplied with processor. core storage higher by. 4,000 words. card reader slower by 35% . card punch slower by 50%. printer slower by 50%. no indexing. Equipment Rental Basic Core Storage: 8, 192 words Processor and Console $ 2,250 168-1 Arithmetic Unit 390 Buffer Channel Paper Tape Reader: 350 rows/sec. Paper Tape Punch: 110 rows/sec. 1612 Printer Control ' - - - -..lf) . o 1612 Printer: 500 lines/minute ) 161O-A Card Reader-Punch Control 1,840 1,500 IBM 088 Collator: 650 cards/minute IBM 523 Card Punch: 100 cards/minute Optional Features Included:. . Multiple- Divide. Rental: $5,980 per month plus IBM equipment. © 1963 by Auerbach Carporali9n and BNA Incorporated 3/63 244:031.200 § CDC 160-04 031. .2 4-TAPE BUSINESS SYSTEM; CONFIGURATION II Deviations From Standard Configuration: • . . . . paper tape equipment supplied with processor. core storage higher by 4, 000 words. card reader 30% faster. 1 extra input-output channel. magnetic tape 27, 000 char/sec faster. Equipment Rental Basic Core Storage: 8,192 words $ 2,250 Processor and Console: Buffer Channel Paper Tape Reader: 350 rows/sec. Paper Tape Punch: 110 rows/sec. 161O-A Card Reader-Punch Control 1,500 IBM 088 Collator: 650 cards/minute IBM: 523 Card Punch: 100 cards/minute 162-1 Magnetic Tape Control 500 603 Magnetic Tape Units (4): 15,000 or 41; 700 char/sec. 2,200 1612 Printer Control 1612 Printer: 500 lines/minute 3/63 ) Optional Features Included: .. none. Rental: $8,290 per month plus mM equipment. I AUERBPCH / .$J 1,840 SYSTEM CONFIGURATION § 244:031.300 031 . .3 6-TAPE BUSINESS SYSTEM; CONFIGURATION 111 Deviations from Standard Configuration: paper tape equipment supplied with processor. card reader 30% faster. magnetic tape 40% faster. no indexing. only I simultaneous transfer while computing, rather than 2. Equipment Rental Basic Core Storage: 8,192 words Processor and Console Buffer Channel $ 2,250 Normal Channel 161 Typewriter 262 168-1 Arithmetic Unit 390 Baper Tape Reader: 350 rows/sec. Baper Tape Punch: 110 rows/sec. 1610- A Card Reader- Punch Control 1,500 IBM 088 Collator: 650 cards/minute IBM 523 Card Punch: 100 cards/minute 1612 Printer Control 1612 Printer: 500 lines/minute· ) 162-1 Magnetic Tape Control 500 603 Magnetic Tape Units (6): 15,000 or 41,700 char/sec. 3,300 Optional Features Included: Multiply- Divide. 161 Typewriter. Rental: $10,042 per month plus IBM equipment. © 1963 1,840 by Auerbach Corporation and BNA Incorporated 3/63 244:031.400 § CDC 160-A 031 .4 6-TAPE BUSINESS/SCIENTIFIC SYSTEM; CONFIGURATION VI Deviations from Standard Configuration:. . . . . . . . paper tape equipment supplied with processor. card reader 30% faster. magnetic tape 40% faster. no indexing. only one simultaneous transfer while computing, rather than 2. Additional buffered channel supplied in 169 Auxiliary Memory Unit may be used for an additional simultaneous data transfer. fixed point multiply-divide by subroutine. Equipment Rental 169 Auxiliary Memory Unit: 3 modules of 8, 192 words each of core storage. $ 2,750 Basic Core Storage: 8, 192 words 2,250 Processor and Console Buffer Channel Normal Channel 262 161 Typewriter Paper Tape Reader: 350 rows/sec. Paper Tape Punch: 110 rows/sec. 1,500 161O-A Card Reader-Punch Control mM 088 Collator: .650 cards/minute mM 523 Card Punch: 100 cards/minute 450 168- 2 Arithmetic Unit 1612 Printer Control 1612 Printer: 500 lines/minute l 162-1 Magnetic Tape Control 603 Magnetic Tape Units (6): 15,000 or 41,700 char/sec. Optional Features Included: . • . . . . • . . . . . . . 3 modules of core storage. 168-2 Arithmetic Unit 161 Typewriter. Rental: 3/63 $12,852 per month plus mM equipment. 1,840 500 3,300 244:031.500 SYSTEM CONF.\GURATION § 031 . .5 DESK SIZE SCIENTIFIC SYSTEM; CONFIGURATION IX Deviations from Standard. Configuration: . . . . . .. core storage smaller by 1,300 words. paper tape input faster by 340 rows/ sec. paper tape output faster by 100 rows/sec. Equipment Rental Basic Core Storage: 8,192 words Processor and Console Buffer Channel $ 2,250 Normal Channel Paper Tape Reader: 350 rows/sec. Paper Tape Punch: 110 rows/ sec. 161 Typewriter 262 168-1 Arithmetic Unit (fixed point) 390 Optional Features Included: . 161 Typewriter. Rental: $2,902 per month. © 1963 by Auerbach Corporalion end BNA Incorporoled 3/63 CDC 160-A 244:031.600 § 031 . .6 PUNCHED TAPE/CARD SCmNTIFIC SYSTEM; CONFIGURATION X Deviations from Standard Configuration: . . . . . . . core storage smaller by 2,280 words. paper tape input faster by 75%. only 1 simultaneous transfer while computing, rather than 2. Additional buffered channel supplied in 169 Auxiliary Memory Unit may be used for an additional simultaneous data transfer. no indexing. fixed point multiply-divide by subroutine. Equipment Rental 169 Auxiliary Memory Unit: 1 module of 8, 192 words of core storage $ 1,250 Basic Core Storage: 8, 192 words Processor and Console Buffer Channel 2,250 Normal Channel Paper Tape Reader: 350 rows/sec. Paper Tape Punch: 110 rows/ sec. 161 Typewriter 262 168- 2 Arithmetic Unit 450 Optional Features Included: . . . . . . . • . • . . . . 1 module of core storage. 161 Typewriter. 168-2 Arithmetic Unit Rental: 3/63 $4,212 per month. 244:041.100 • STANDARD EDP • CDC 160-A Internal Storage Core Storage R[PORTS INTERNAL STORAGE: CORE STORAGE § 041. .1 GENERAL .11 Identity: . 12 Basic Use: . · 13 Description basic core storage; part of 160-A Processor. 169 Auxiliary Memory Unit. .2 PHYSICAL FORM .21 Storage Medium: • 22 Physical Dimensions . magnetic core . • 221 Magnetic core storage Core diameter: working storage. Array size:. . The basic storage capacity of the 160-A Processor is 8,192 12-bit words, which is twice the capacity of the 160 Processor.' This capacity may be increased to a total of 32,768 words by the addition of one, two, or three modules of 8,192 words each, using the Model 169 Auxiliary Memory Unit. Each group (module) of 8,192 words is considered as containing two banks of 4,096 words. The Model 169 includes a buffered input-output channel which permits an input-output transfer to overlap computation. The manufacturer states that this feature permits two 160-A processors to share core storage. .23 Storage Phenomenon: .24 Recording: Permanence .241 Data erasable by instructions: . 242 Data regenerated constantly: • 243 Data volatile: • 244 Data permanent: . 245 Storage changeable: .28 The read-restore cycle time is 6.4 microseconds per word. Each word stores one character from an input device, or one 12-bit binary number, including its sign. No parity bit is included. One or two words are required to hold an instruction, as the processor has both one-word and two-word instructions. Words are not directly addressable within the normal addressing scheme permitted by the 12-bit word (4 octal digits). The processor contains four storage bank control registers, each of which can store an octal digit used for selecting one of the eight storage banks. Instructions and operands use the digit in one of the four registers for bank selection, and addressing in any of seven modes is done within the selected bank. Instructions are available to load bank selection digits into the four storage control registers. .3 DATA CAPACITY .31 Module and Sx:stem Sizes .14 Availability: . . 4 months. · 15 First Delivery: . 1961, basic storage. 1962, 169 unit. .16 Reserved Storage: 56 words per bank held by convention for indirect addressing (00008 to 00678)' 8 words per bank held by • 32 convention for temporary storage (00708 to 0077 8)' © 1963 yes • no . yes • no . no. coincident current. same as recording. uniform. Potential Transfer Rates .291 Peak data rates Cycling rates: . Unit of data:. Conversion factor: • Data rate: No areas of storage are reserved, although locations 00708 to 00778 in each bank are used by programming convention for temporary storage as counters, etc., and locations 00008 to 00678 in each bank are reserved in a similar manner for indirect addressing direct addresses. direction of magnetization. Access Techniques .281 Recording method: .282 R~ading method: . 283 Type of access: . .29 0.050 inch o. d. O. 030 inch i. d • 64 bits by 64 bits by 12 bits. 156, 250 cycles/sec. word. 12 bits/word. 312,500 char/sec. 468,750 digits/sec. 1,875,000 bits/sec. Minimum Storage Identity: Words: Characters : Insuuctions: Banks: Digits: Modules: Maximum Storage basic basic storage storage plus 169-1 plus 169-1 16,384 8,192 16,384 32,768 6,000, 12,000, approx. approx. 4 2 24,576 49,152 2 1 Rules for Combining lVIodules: . by Auerbach Corporation and BNA Incorporated basic storage plus 169-2 24, 576 49,152 18,000, approx. 6 73,728 3 basic storage plus 169-3. 32,768. 65,536. 24,000, approx. B. 98,304. 4. anyone of the above columns may be selected. 3/63 244:041.400 § CDC 160-A 041. .4 CONTROLLER: .5 ACCESS TIMING • 51 Arrangement of Heads: .52 Simultaneous Operations: .53 . . . no separate controller . .6 3/63 PERFORMANCE • 71 Data Transfer Pair of storage unit possibilities . . by programming• With self: 1 access device. •72 using Model 169 Auxiliary Memory Unit. A block of data from a storage bank of the Model 169 can be transferred to an external device via buffer register of the 169 at the sam~ time as the 160-A and the remainder of the storage modules of the 169 operate normally. Access Time Parameters and Variations .531 For uniform access AGcess time: . Cycle time: . . For data unit of: .7 6.4", sec. 6.4", sec. 1 word of 12 bits. CHANGEABLE STORAGE: . . . . . none. Transfer Load Size With self via Accumulator: .73 Effective Transfer Rate With self: .8 1 word. 22,300 words/sec, using straight-line coding. ERRORS, CHECKS AND ACTION Error Check or Interlock Action Invalid Address: Invalid code: Receipt of data: Recording of data: Recovery of data: Dispatch of data: Timing conflicts: Timing error in equipment: non-existent bank check all valid. none. none. none. none. interlock. wait. halt; alarm. interlock in 169 halt. alarm. 244:042.100 .STAN'AR' EDP • CDC 160-A REPORTS Auxilary Storage 8951 Magnetic Drum AUXILIARY STORAGE: 8951 MAGNETIC DRUM § 042. . 13 .1 GENERAL .11 Identity: . 12 Basic Use: . . . . . . auxiliary storage. The 8951 Magnetic Drum is a new drum storage unit which stores 32, 864 words and has a transfer rate of 32, 000 words per second. No further information on the unit is available. Magnetic Drum. Model 8951 . © 1963 Description • 14 Availability:. . 4 to 6 months • .15 First Delivery: . first quarter 1963. by Auerbach Carporation and BNA incorporated 3/63 244:051.100 _STANDARD EDP • REPORTS CDC 160-A Central Processor CENTRAL PROCESSOR § 051. .1 GENERAL . 11 Identity: .12 Description .12 Description (Contd.) CDC l60-A ADDRESSING MODES . . . . . l60-A Processor . The basic l60-A Processor operates at the same speeds as the 160 Processor, but has a larger basic core storage, a buffered input-output channel, an interrupt system, and additional instructions. The 160-A also provides for additional core storage and the facility to connect an arithmetic unit which speeds up floating point calculations. The 160- A Processor is capable of relatively high processing speeds, but handles operands of only 11 data bits plus a sign bit. The instruction repertoire contains few basic instructions, but almost every instruction has eight possible addressing modes, with the result that programming to realize the full capabilities of the processor is complex. Instructions are performed in the single-address mode and consist of one or two words. The 11-bit data word provides a precision of only 3.3 decimal digits. Double or greater precision arithmetic, if used, must be sUPIllied by subroutines or through use of the optional 168-1 Arithmetic Unit. Floating point operations are perlormed -by stibroutines, or by subroutines and the optional 168-2 Arithmetic Unit. Single precision arithmetic operands in the l60-A are treated as 11 bits plus a sign bit. A single precision add-to-accumulator operation requires three storage cycles of 6.4 microseconds each. Words in storage contain no parity bits, and parity is not checked automatically on input or output. The instruction repertoire includes add-to-storage and Boolean commands, but lacks compare and radix conversion instructions. Three sense switches and three selective stop switches are provided. Automatic multiply and divide are not provided as standard; however, the Model 168 -1 Arithmetic Unit is available for double precision add-subtract operations, and for single or double precision multiply and divide operations (see Section 244:052). Double precision add or subtract requires 145 microseconds using the 168-1 Arithmetic Unit; performing the add or subtract operations by subroutine requi:r:es 225 or 300 microseconds, respectively. Indexing and indirect addressing are two of the eight addressing modes under which an instruction may operate. The usual single-address instruction, which calls for an operand anywhere in core storage, requires two successive computer words, and is found as one of the addressing modes. The modes are distinguished by the instruction operation codes, and are applicable to most instruction types. These eight addressing modes, and their operand locations, are summarized in the table which follows. The Relative mode is counted as two modes. © 1963 Address Mode NoDirectIndirectRelativeConstantMemorySpecific- Instruction Length (Words) 1 1 1 1 2 2 1 Operand Location t E l' (E) Contents of (E) P -FE .t P+1 (P + 1) 77778 t E is 2-octal-digit field in instruction. " ( ) means "contents of." P is value of instruction counter. + Literals can be provided by the No Address and Constant Address modes of instructions. In the No Address mode, the E field of the instruction is used as the operand (two octal digits), and in the Constant Address mode the word follOwing the instruction word is used as the operand (four octal digits). The storage bank to be referenced is specified through one of four bank control registers. DeSignated as the direct, indirect, relative, and buffer bank control registers, these registers correspond to three of the instruction address modes and to Buffer channel data transfers. All instructions are obtained using the relative bank control. Operands are found in banks corresponding to the addressing modes: full details are in the manufacturer's l60-A Computer Programming Manual. The additional instructions in the l60-A not present on the 160 provide the following: additional internal shifting; a return jump; selective stops and selective jumps; a conditional jump, depending on the status of the Buffer channel; control for the storage bank control registers and the Buffer channel control registers; clear of interrupt lockout; and several other miscellaneous functions. The interrupt system contains four separate interrupt channels: one for the operator, one which occurs at the end of every buffered data transfer. and two for external equipment. Occurrence of an interrupt causes automatic program transfer to one of four fixed locations, one location for each interrupt channel. All further interrupts are locked out until cleared by the program. The l60-A has two types of input-output commands: external function commands and data transfer commands. These commands are similar to the input-output commands of the l604/1604-A computers. The external function commands select devices and specify the operation to the device. The data trans- by Auerbach Corporation and BNA Incorporated 3/63 244:051.120 § 051. . 12 Description (Contd.) CDC 160-A • 13 • 14 fer commands specify the block of data to be transferred, and initiate the transfer. In addition, the .2 external function command can request the external device to present its status, for interpretation by the .21 central processor. Availability:. • 4 months • First Delivery: 1961. PROCESSING FACILITIES Operations and Operands Provision Radix Operation Size and Variation The recommended general procedure for an input.211 Fixed point output operation is as follows: status request, Add-subtract: automatic binary 11 bits + sign bit. status test, select unit, initiate data transfer; then "Multiply status request and status' test after the operation is binary 22 bits. subroutine Short: finished. Status checking is recommended to avoid subroutine Long: binary or depends on routine. indefinite delays in case a unit is not capable of decimal being operated (for example, power to the unit may 11 or 22 bits. optional 168-1 binary be off). If power to a unit is off, its status can still Divide be determined. The paper tape reader and punch are No rebuilt into the processor and have no status codes. mainder: subroutine 22 bits. binary Remainder: subroutine binary or depends on routine. Peripheral devices can be connected to either the decimal Buffer channel or the Normal channel. Exceptions 11 or 22 bits. optiona1l68-1 binary are the paper tape reader and punch, which are always connected to the Normal channel. The other devices can easily be changed from one channel to the .212 Floating other. A peripheral unit connected to the Normal binary operations point: Channel can transfer data over the Normal channel using either subroutines connected to the Buffer channel can only, but a unit or subroutines and transfer data over either channel, depending on the optional 168.2. input-output command used. A peripheral device .213 Boolean connected to the Buffer channel and transferring data binary 12 bits. automatic AND: via ·the Normal channel prevents use of the Buffer Inclusive OR: none. bianry channel during the transfer. Simultaneous operations 12 bits. Exclusive OR: automatic are effected by initiating a transfer on the Buffer (same as channel, then either executing instructions in the Selective processor or transferring data via the Normal Complement channel. instruction) • . 214 Comparison: none. Programming the l60-A system is necessarily • 215 Code translation: subroutine. complex because of the short computer word length. .216 Radix conversion: . subroutine. One immediate consequence of the short word is .217 Edit format: no edit facilities. that instructions which reference arbitrary core .218 Table look-up: none. locations are two words long. A second consequence .219 Others is that a computer word cannot specify the complete Add and replace address of a core storage location, and the contents operand with sum: automatic. of a bank control register must be used implicitly Replace operand with to select one of eight available core banks. operand + binary one: automatic. When an instruction references a location through relative addressing (plus or minus 63 locations of the program counter) or through indirect addressing .22 Special Cases of Operands (using 64 standard locations per bank) it requires only 1 word. These instructions are easy and con.221 Negative numbers: "1" in most significant bit position (one's complevenient to use within short loops. However, when using symbolic locations, it is easy to exceed the ment). 63-word limit by mistake (or when patching), thereby • 222 Zero: • . . • . • • . + or -; either usable in causing errors. arithmetic. Must be + zero for branch on zero. The disadvantages of this multi-mode programming .223 Operand size deterfixed at 11 bits + Sign bit are: mination: • Non-uniform instruction forms (12 bits one's complement). • The attendant changes in thinking while programming • 23 Instruction Formats • Potential for making mistakes • The requirement for changing bank control 1 or 2 words . • 231 Instruction structure: register contents. .232 Instruction layout .2321 I-word instruction: Since the addresses are l2-bit numbers, address modification can be difficult. The address is treated by the arithmetic unit as an 11-bit number with a Execution Address Function Code range of ±2, 047 rather than an absolute address with 6 6 a maximum value of 4, 095. .. 3/63 CENTRAL PROCESSOR § 244:051.2322 051. .238 Indirect addressing: . 2381 Recursive: . .2382 Designation: . 2322 2-word instruction: Word 1 Function Code 6 Word 2 Address or Operand (G) 12 . 2384 Indexing with indirect addressing: . • . • not possible. • 239 Stepping: • • • . . . none. .24 .233 Instruction parts Name Function code (F): Execution address (E): Purpose operation code. specifies absolute address, or increment to present program counter contents (max value of 77 octal), or 6-bit value. Address or Operand(G): absolute address, or 12-bit value. .234 Basic address structure: single address ~ .235 Literals 1 word. Arithmetic: . . . Comparisons and tests: none. .236 Directly addressed operands: . . . . operands are 1 word long. The structure of the instruction permits addresslng of only 4.096 words directly; a bank control register is used to select which 1 of the 8 possible banks of 4, 096 words is to be used. Basic storage contains 2 banks. The Model 169 Auxiliary Unit adds 2. 4. or 6 more banks. · 2361 Internal storage type: core storage. Minimum size: 8,192 words. Maximum size: . 8,192 words. 8,192 using bank contro~ Valume accessible: register; but note that sequential states of address counter skip an address at two different counts. These are usable by setting counter. .237 Address indexing:. • none as such; see. 2373. .2371 Number of methods: 1. effective operand address · 2373 Indexing rule: is formed by incrementing or decrementing contents of instruction counter by "E" value in instruction. Maximum value of 'iE" is decimal 63. operation code. · 2374 Index specification: .2375 Number of potential indexers: • . . . 1. .2376 Addresses which can be indexed: no restrictions. .2377 Cumulative indexing: not possible. .2378 Combined index and step:.. . • . . • not possible. © 1963 none as such; see. 2382 • no . operation code specifies indirect addressing mode; "E" value in instruction specifies one of 64 indirect addresses, located in addresses 0000 to 0077 (octal). Special Processor Storage .241 Category of Number of Size in Program usage locations bits storage Instruction counter (P): 1 12 stores loca tion of present insU'uction. Accumulator (A): 1 .242 Category of Total number locations storage P~ A: 1 word 1 word arithmetic accumulator register. Physical Access time. Cycle time. form /Lsec /Lsec 12 flip-flops flip-flops .3 SEQUENCE CONTROL FEATURES .31 Instruction Sequencing: 6.4 6.4 6.4 6.4 . . . . single address. .311 Number of sequence control facilities: 1. .314 Special sub-sequence counters: none. .315 Sequence control step size: 1 instruction (lor 2 words). .316 Accessibility to routines: . • • yes. .317 Permanent or optional modifier: . none. .32 Look-Ahead: .33 Interruption .331 Possible causes Standard: Special: none. operator pressing any combination of a Selective Stop and a Selective Jump switch (interrupt line #10). termination of every Buffer channel data transfer (interrupt line #20). any input-output device or controller which can generate an interrupt signal (interrupt lines #30 and 40). .332 Program control Individual control: none. Method The 4 interrupt lines are serviced on a priority basis, with # 10 first and #40 last. Whenever an interrupt takes place, or whenever an external function instruction is executed, all further interrupts are locked out until the lockout is cleared under program control by a Clear Interrupt Lockout instruction. Thus, if each interrupt routine has a CIL instruction, all active interrupts will be serviced. Any interrupt line which becomes by Auerbach Corporation and BNA Incorporated 3/63 CDC 160-A 244:051.332 § 051. 332 Program control (Contd.) Method (Contd.) active remains active until it is accepted, or until a console master clear is performed. This master clear removes interrupt lockout. Restriction: none; see description of operation under Method above. • 333 Operator control: . • _. operator can clear pending interrupts but cannot prevent them from becoming active again. .334 Interruption conditions: none • . 335 Interruption process Disabling interruption: further interruptions on other lines are locked ollt and saved., . Registers saved:. . _ contents of program counter saved in one of four locations depending on which interrupt line is activated. Accumulator saved only if inter:rupt routine does so. Destination: program control transferred to one of four locations depending on which interrupt line is activated. Transfer back depends on the interrupt routine. .336 Control methods Determine cause: one interrupt routine for each interrupt line (#10, 20, 30"and 40.). Enable interruption: interruption re-enabled when CIL instruction executed. .34 Multi-Running: as programmed using the interrupt facilities. . . 35 Multi-sequencing: . •4 PROCESSOR SPEEDS none • .414 Control Compare: • Branch: •. no compare. 6.4, short jump. 12.8, unlimited. 25.6 or 32. no counters. no edit instruction . no convert instruction . 6.4 IJ.sec for 1 to 6 bits; circular . • 415 • 416 • 417 .418 Compare and branch: Counter control: . Edit: . . Convert: Shift: •. .42 Processor Performance in IJ. sec Conditions fixed point, single precision. fixed point, programmed double precision. floating point using subroutines; 8 decimal digits. floating point using 168-2 Arithmetic Unit. I: . II: .. III: IV: .421 For random addresses I II c = a + b: 64 480 b = a + b: 45 480 SumN items: 19 314 2,000 t 7,700av. c =ab: 2,000 t 10,200 c =alb: III 4,350 4,350 4,120 14,200 19,200 IV 1,000. 1,000. 1,000. 1,500. 1,500. t programmed. .422 For arrays of data II I ci =ai +bj : bj = ai +bj: Sum N items: c = c +aibj: 192 147 115 2,000 t 698 698 390 8,420 III 4,640 4,580 4,430 18,700 IV 1,290. 1,240. 1,080. 2,740. t programmed • .423 Branch based on comparison Numeric data: • 154 (1 word of 4 octal digits). .411 Fixed point not applicable. Alphabetic data: Single precision (11 bits) Switching Add-subtract:. . . . 19.2. Unchecked: . 154. Multiply: . . . . • • 650, by subroutine. Checked: . • 256. Divide: . . . . . . • 2,000, by subroutine. List search: 45 + 128N. Double precision using 168-1 Arithmetic Unit .425 Format control per character Add-subtract: • 145. Unpack Multiply:. • . • . • . 250. Scientific Binary: • . • . . . O. Divide: • . • • . .• 295 to 365. Double precision using subroutines BCD input to double Add:. . . 225. precision fixed Subtract: • • •. 300. 251. point: . . • . Multiply:. . . . . 5,000 to 10, 000. BCD input to Divide: •. .••• 10, 000. floating point: 1,125 (***). .412 Floating point Compose By subroutines and 168-2 Arithmetic Scientific Units 14, for moving. Binary: • • . • . Add - subtract: 4, 000 1, 000 (**). BCD from double 1,500 (**). Multiply: 14,000 precision fixed 1,500 (**). Divide: 19,000 4,345. point: ••••. .413 Additional allowance for BCD from floating Indexing: . . . • •• no indexing. point: • . . • .. 13, 040 (***). Indirect addressing: O. Re-complementing: O. (***) Estimate by editorial staff (see 1 :010.400). .41 3/63 Instruction Times in IJsec CENTRAL PROCESSOR § 244:051.426 051. .5 .426 Table look-up per comparison For a match: . 115. For least or greatest: 160. For interpolation point: 109. • 427 Bit indicators Set bit in pattern: 58. Test bit in pattern: . 26. Test AND for B bits: . 45. Test OR for B bits:. 26. .428 Moving: 45 per word. © 1963 ERRORS. CHECKS AND ACTION Error Overflow: Zero divisor: InvaVd operation: Invalid data: Arithmetic error: Invalid address: Receipt of data: Dispatch of data: Timing fault: Interrupt lockout: Output unit not selected properly: Input unit not selected properly: by Auerbach Carporation and BNA Incorporated Check or Interlock Action n<;>ne. none. none • none. none. check on non-existent bank ? none. none. interlock ? ? ? interlock alarm. interlock alarm. 3/63 244:052.100 .STANOARO EDP • CDC 160/160-A R£IIlRTS 168-1 Arithmetic Unit CENTRAL PROCESSOR: ARITHMETIC UNIT § 052. .212 Floating point: .1 GENERAL . 11 Identity: . .12 Fixed Point Arithmetic Unit. 168-1. Description The 168-1 Arithmetic Unit performs double precision fixed point add and subtract operations for the 160 and 160-A Processors; it also performs fixed point single or double precision multiply and divide operations. The Processor addresses the Arithmetic Unit and transfers the ll-bit binary number (Plus sign) operands to it. After the calculation has been completed within the Arithmetic unit the Processor program initiates transfer of the results to the Processor. Duri~g the computation, both the 160 and 160-A Processors have some free time to execute other program steps. Paragraph .411 summarizes these times. The free times include loading and unloading the operands from core storage to the Arithmetic Unit and back to core storage. .4 Availability:. . 4 months . . 14 First Delivery: 1962. .2 PROCESSING FACILITIES · 21 Operations and Operands Operation and Variation · 211 Fixed point Add-subtract: Multiply Short: Long: Divide No remainder: Remainder: Provision Note: 160/160-A Processor has some free time available for its own processing, during operation of the 168-1, as follows: Add-subtract:. . 5 ",sec. Single preCision mUltiply: . . . 38 ",sec. Double precision multiply: . . . n ",sec. Single precision divide: . . . . 39 to 74 ",sec. Double precision divide: . . . . 72 to 142 Il sec. t Times given include loading and unloading times of the 168-1 Arithmetic Unit. .5 Radix binary 22 bits. none. automatic binary 11 or 22 bits. binary © 1963 ERRORS, CHECKS, AND ACTION Size automatic none. automatic PROCESSOR SPEEDS .41 Instruction Times in ",sec .411 Fixed point t Add-subtract Double preCision (22 bits): . . . . . 145. Multiply Single preCision (11 x 11 bits): . 120. Double precision (22 x 22 bits): . 250. Divide Single precision (22 -:- 11 bits): . 145 to 180. Double preCision (44 .;. 22 bits): . 295 to 365. The 160 and 160-A Processors can interrogate the Arithmetic Unit to determine its status, to help the program run efficiently. The status responses possible are: Unit Ready, Add/Subtract Overflow, Divide Fault, Unload Not Completed, and Busy Computing. The 168-1 Arithmetic Unit does not contain an Accumulator, and hence operations on strings of operands are not possible without reloading. . 13 . . . . none . 22 or 44 bits. Overflow: Zero divisor: Quotient too large: Arithmetic error: Check or Interlock ~ check check check timing check ** * on alarm 168-1, halt (?). Receipt of data: Dispatch of data: =1= none. none. Signal available for sensing by 160/160-A Processor. by Auerbach Corporation and BNA Incorporated 3/63 244:061.100 .STANMHD EDP • REPORTS CDC 160·A Console CONSOLE § 061. .1 .25 Name GENERAL . 11 Identity: . Console; built into 160-A Processor. .12 Associated Units: none. .13 Description The Console is a small sloping panel located toward the rear of the desk-size work area on the top of the Computer unit. The paper tape reader is on the right-hand end of the work area. The Console displays the register and storage contents in octal form using the Arabic numerals 0 through 7. In addition, the status indicator panel displays computer conditions using alphabetic symbols (SEL, IN, OUT, etc.). The Program, Accumulator, and Storage Registers have their contents displayed, and each of the three displays permits entry of binary data into the registers. The other registers of interest in the 160-A may also be displayed (BER, BFR, bank controls, etc.). The A and Z Register display groups, and the status indicator panel, have colored background lamps for further status indications. Displays light only when the computer is halted. CONTROLS • 21 Power Name .26 3 push buttons on register displays 1 push button next to bank selection entry buttons Connections: .23 Stops and Restarts blue button red button button button button button 1 Sense Switches Name Form S elective Jump; 4,2, 1: Selective Stop; 4, 2, 1: DISPLAY .31 Alarms Name Form Name Form none: none: RUN-STEP. 3-position switch. see . 23 above. © 1963 Function indicates computer timing fault. indicates reference to nonexistent storage bank. Conditions Stepping Name: . Form: . Function: . control stop conditions. red background to A Register display red background to P Register display group no name: . 32 control juml> conditions. Margin 3-position switch . set marginal conditions for test of computer; Hi-Lo. Normally on center; not an operator control. no name: RUN-STEP. 3-position switch. RUN starts program. Center halts program. STEP executes 1 storage cycle of instruction each time switch moved from center to STEP. Function 3 two-position switches 3 two-position switches Special .3 none. cleats selected bank control. LOAD-CLEAR. 3- position switch. sets Load Mode on paper tape input; see .25 above. turns system power on. turns system power off. control power to respective units. central is neutral• CLEAR is momentary; clean registets and master controls. LOAD sets condition for Load Mode paper tapes to be read properly. clear P, A, or 1. Register contents. Loading. Function Form .22 . 24 Clear: Name: . . Form: •. Function: .27 Function 3 -position switch Name:. Form:. Function: On: Off: Punch On: Punch Off: Reader On: Reader off: Name: . . Form: . . Function: Form WAD-CLEAR: Clear: .28 .2 Resets by Auerbach Corporation and BNA Incorporated green background to status indicator red backgroul}d to status indicator Function computer in RUN status. STOP or STEP status. Appears 1'Ihen HLT or ERR instruction executed, RUN switch removed fram RUN position, or selective stop is executed. 3/63 CDC 160-A 244:061.320 § 061. .32 Conditions (Contd.) Name none: Form· none: none: ERR: SEL: alphabetic symbols OUT: alphabetic symbols IN alphabetic symbols IBA: alphabetic symbols DBA: alphabetic symbols Storage: .4 ENTRY OF DATA .41 Into Control Registers Function blue background to A Register display group blue background to Z Register display red bac kground to Z Register group alphabetic symbols .34 indic!ltes interrupt lockout. shows instruction is in Z Register rather than data. punch low on tape. computer halted on ERR instruction. computer transmitting selection code. output "operation proceeding or being initiated: normal channel. input operation proceeding or being initiated: normal channel. buffer channel input operation proceeding. buffer channel output operation proceeding. Into storage bank controls: . . • use button to select 1 of 4 controls and enter binary data to select bank, using buttons provided. Into P Register: . . . . press binary-coded buttons below P display to enter data. Press RUN-STEP switch. set ENTER -SWEEP switch Into A Register: to ENTER. Press binarycoded buttons below A display. Press RUN-STEP switch. A, B, C, or D: REL,IND, DlR, or BFR: o to . 33 7: alphabetic symbols shows next instruction cycle. alphabetic symbols in status display: shows which storage bank control is to "be used on next storage reference. in status display: shows contents of displayed bank control. numeric symbol p Register group F code: Form 2 octal digits in p register: Arabic form 4 octal digits in Arabic form S register: 4 octal digits in Arabic form A Register group BFR register: A register: A· register: Into Storage: .5 CONVENIENCES .51 Communications: none. 4 octal digits in Arabic form 4 octal digits in Arabic form 4 octal digits in Arabic form • 52 Clock: . . . none. .53 Desk Space: desk height work area 62 in. by 30 in., less small amount for console panel and paper tape reader. .54 View: unobstructed in all directions by seated operator. .6 INPUT-OUTPUT UNIT: none at console. Optional Model 161 Input/Output typewriter has own cabinet near console. Typewriter can output at approximately 10 char/sec. Function current op code: P selector switch up. contents of program counter: P selector switch in center. address of word to be transferred to pr from storage: P selector switch down. BFR contents: A selector switch up. contents of A register: A selector switch in center. results of last add operation: A selector switch down. Z Register group BER: 4 octal digits in Arabic form Z register: BXR: 3/63 .42 Control Registers Name 4 octal digits in Arabic form 4 octal digits in Arabic form address of last word transferred on buffer channel: Z selector Switch up. contents of Z register: Z selector switch in center. indicates terminating address of buffer operation; Z selector switch down. in Z register display. To observe contents of a storage location, set ENTER -SWEEP switch on SWEEP. Set relative bank control to bank desired. Set core storage location into P register via buttons and press RUN-STEP switch to STEP. Z will display one word of core storage as in . 33 above. into storage via Z and A Registers. Set ENTERSWEEP switch to ENTER. Set relative bank control using buttons provided . Press binary coded buttons below Z display. Press RUN-STEP switch. Data goes to Z, A, and storage location specified by setting of relative bank control and setting of P. 244:071.100 .SlANDAAD EDP • CDC 160/160-A REIIlR1S Input-Output Paper Tape Reader INPUT-OUTPUT: PAPER TAPE READER § 071. .3 EXTERNAL STORAGE · 31 Form of Storage .1 GENERAL .11 .2 paper tape; tape made of parchment, Mylar or Mylar-aluminum laminate. Description Lightly-oiled black tape is recommended for the The 350 Paper Tape Reader is a photoelectric reader punch . mounted on the 160 Console desk that always oper. 312 Phenomenon: . . . . . . fully punched holes. ates on the Normal Channel in the 160-A Processor. The reading head employs transparent windows which · 32 Positional Arrangement direct light to the photo cells. This construction provides a smooth reading surface that has no holes · 321 Serial by: . 1 to N rows at 10 rows per which can accumulate dust to calise reading errors. inch. 5, 6, 7, or 8 tracks at · 322 Parallel by: The reader operates at a rate of 350 rows per second standard spacing. when reading blocks of data, and accepts five-, six-, · 324 Track use Normal Mode Load Mode seven, or eight-track paper tapes of standard widths. Data: 6 5,7,or8. Reading can be performed on either strips or loops Redundancy check: o O. Timing: of tape. The tape can be made of paper, parchment, 1 sprocket 1 sprocket. Control signals: 1, in alternate O. Mylar, or Mylar-aluminate laminate. Slightly-oiled black paper tape is recommended for use on the rows Unused: paper tape punch. depends on o. width Total: 7 Under program control, the reader can input either 5, 7, or 8 plus one row, or an entire block of data. The end of the sprocket . block is defined by the instruction and is specified as . 325 Row use: . all for data; no inter-block the final core storage location desired. These progap required. grammed inputs are known as the NORMAL mode of input, and one row is placed in the least significant · 33 Coding:......... matched; see Data Code Table No.3. bits of one 12-bit word. The LOAD mode, or automatic load input mode, causes input of two 6-bit rows per core storage 12-bit word, and is halted · 34 Format Compatibility:. all devices using standard 5- to 8-track punched when a unique control code is read from the tape. tape. There is no automatic parity check on reading. · 35 Physical Dimensions 4 months . Availability: .• .351 Overall width: . . . . 0.6875 inch for 5-track tape. 1960. First Delivery: 0.875 inch for 7-track tape. 1 inch for 8-track tape • PHYSICAL FORM . 352 Length:. . . . . . . •. 1,000 feet per reel. .21 Drive Mechanism .12 . 13 .14 Paper Tape Reader. 350. Identity: . 211 Drive past the head: . .212 Reservoirs: • 213 Feed drive: ..... · 22 Sensing and Recording Systems · 221 Recording system: . • 222 SenSing system: .• · 24 pinch roller friction. none • motor. none. silicon photoelectric cells . .4 CONTROLLER .41 Identity: .42 Connection to System .421 On-line: .422 Off-line: Arrangement of Heads Use of station: • Stacks: . . . . . Heads/stack: •. Method of use: . .311 Medium: . . • • . .43 reading. 1. 8. 1 row at a time. © 1963 built into Console. 1. none. Connection to Device .431 Devices per controller: 1. .432 Restrictions: . none. by Auerbach Corporation and BNA Incorporated 3/63 244:071.440 § CDC 160/160-A 071. . 44 Data Transfer Control .441 Size of load: . . . . . . 1 to N rows, 1 row per word (NORMAL Mode). 2 to N rows, 2 rows per word (LOAD Mode). core storage . . 442 Input-output area: .443 Input-output area each word of core storage. access: . . . . . .444 Input-output area yes; serial operation. locko-ut: • . . . . • 445 Table control: • . none. automatic . • 446 Synchronization: . .5 PROGRAM FACILITIES AVAILABLE . 51 Blocks . 511 Size of block: .512 Block demarcation Input: . . . . . . . .52 · 622 Important -parameters Density: . Speed: .. Start time: Stop time: Selecting device: • • 623 Overhead: ~ . . . • 624 Effective speeds: . · 63 Demands on System processor. 2.9. 100 (on 160 or on Normal channel of 160-A) . Component: Msec/row: . Percentage: 1 row, or 1 to N rows . .7 EXTERNAL FACILITIES address specifications in instruction (NORMAL Mode). · 71 Adjustments number of tracks. tape width guide. set for 5, 7, or 8 level tape. Adjustment: Method: . Comment: . Input-Output Operations .521 Input LOAD Mode: . 523 Stepping: • . 524 Skipping: . .526 Searching: .72 N rows forward, terminated by missing control punch. 1 row (INA instruction). 1 to N rows (INP instruction), terminated by final address specification in instruction. .73 none. none. .731 none. .53 Code Translation: matched codes. Volumes handled Storage Reel: . . . . . .732 Replenishment time:. .54 Format Control: . none. .733 Adjustment time: .55 Control Operations: none. • 56 Testable Conditions: . none. .734 Optimum reloading period: . . . . . . NORMAL Mode: .8 .6 PERFORMANCE . 61 Conditions: . . . . none. • 62 . Speeds . 621 Nominal or peak speed: 350 rows/sec. 3/63 10 char/inch. 35 inches/sec. 3 msec to next row. 1 msec; stops before next row. 0.032 msec. start time. 350 rows/sec if less than O. 25 msec elapse between completion of reading one block and initiation of next input operation . Other Controls . mode selector. LOAD-CLEAR key on Console. selects LOAD mode or NORMAL Mode. Function: . Form: •. Comment: Loading and Unloading- Capacity 1,000 feet. 0.5 to 1.0 minute; unit needs to be stopped. 1. 0 minute including replenishment. 6 minutes. ERRORS, CHECKS AND ACTION Error Check or Interlock Reading: Invalid code: Exhausted medium: Transmitting data: none • all valid. none. none • 244:072.100 .STAtfDARD II R[PORTS EDP CDC 160/160-A Input-Output Paper Tape Punch INPUT-OUTPUT: PAPER TAPE PUNCH § 072. .1 GENERAL .11 Identity: . 12 Description Paper Tape Punch. Teletype BRPE -11 Punch. .324 Track use Data: . . Redundancy check: Timing: . . . . Control signals: . Unused: . Total:. .325 Row use: The Paper Tape Punch is a standard BRPE-11 unit mounted on a hinged rack at the rear of the right wing of the console desk. Punched tape is fed out of a .33 slot in the compartment door. .13 . 14 The Punch operates at a rate of 110 rows per second .34 and punches five-, six-, seven-, or eight-track widths as required. The punch can be programmed to punch either one character at a time or a block at a time. It is always connected to the Normal channel .35 in the 160-A Processor. .351 Black, lightly-oiled tape is recommended for the punch. No parity check is made on data transmitted to the punch, nor is any recording check made. ,352 4 months. Availabili!y: .4 First Delivery: 1960 . .41 matched as in Data Code Tables No. 3 and 4. Format Compatibili!y: all devices using standard 5, 7, or 8-track paper tape. Physical Dimensions Overall width: . . • . Length: • . . . Identi!y: .42 .21 Drive Mechanism .421 On-line: built into console. Connection to System .422 Off-line: .43 .22 0.6875 inch for 5-track tape. 0.875 inch for 6- or 7-track tape. up to I, 000 feet per roll. CONTROLLER PHYSICAL FORM sprocket drive. none. 1 (sprocket hole). punch in alternate rows, when punching a LOAD tape . depends on tape width. 5 to 8. all for data. Coding: . .2 .211 Drive past the head: . 212 Reservoirs: . 5, 6, 7, or 8. O. 1 (on Normal channel in 160-A). none . Connection to Device Sensing and Recording Systems . 221 Recording system: . 222 Sensing system: . die punch . none. .23 Multiple Copies: none. .24 Arrangement of Heads .431 Deyices per controller: 1 . • 432 Restrictions: . . . . . none . · 44 Data Transfer Control .441 Size of load: 1 to N rows; 5 to 8 bits of each word per row. core storage . .3 EXTERNAL STORAGE .442 Input-output areas: .443 Input-output area access: . . . . · 444 Input- output area lockout: . . . . · 445 Table control: .446 Synchronization: • 31 Form of Storage .5 PROGRAM FACILITIES AVAILABLE .51 Blocks Use of station: Stacks: . . . . Heads/stack: . Method of use: .311 Medium: . . . 312 Phenomenon: punching 1. 8 plus sprocket punch. 1 row at a time. paper tape. fully punched holes . .511 Size of block: .32 Positional Arrangement .321 Serial by: . 322 Parallel by: . 1 to N rows at 10 rows/ inch. 5, 6, 7, or 8 tracks . © 1963 .512 Block demarcation: by Auerbach Carporation and BNA Incorporated each word of core storage. in 160 only. none. automatic . 1 row or 1 to N rows normally. 2 to N rows in punching LOAD tape. address specifications in instruction. 3/63 244:072.520 § CDC 160/160-A 072. . 63 · 52 Input- Output Operations .522 . 523 . 524 . 525 · 526 Output:. Stepping: Skipping: Marking: Searching: punch 1 block forward. none . none . none. none. . 53 Code Translation: matched codes . . 54 Format Control:. none. . 55 Control Operations: none. .56 Testable Conditions: . none. Demands on System Component: . Msec/row: • Percentage: . .7 EXTERNAL FACILITIES .71 Adjustments Adjustment: . Method:. . Comment: . .72 .73 PERFORMANCE · 61 Conditions: . 62 Speeds . 621 Nominal or peak speed: .622 Important parameters Tape speed: . . Packing density: . . Start time: . . . . Stop time: . . . . . Time to select device: . 623 Overhead: . . . . .624 Effective speeds:. . . 3/63 110 rows/sec . 11 inches/sec. 10 rOWS/inch. ? ? 0.032 msec. start time . no rows/sec if less than 9 msec elapsed between completion of punching one block and initiation of next output operation. tape feed. lever. Loading and Unloading Storage: Capacity: . . . . none. number of tracks. tape width guide. set for 5-, 7, - or 8-track tape. Other Controls Function: . Form: .6 . processor. 9.1. • 100 (on 160, or Normal channel of 160-A) . reel. 1,000 feet. .732 Replenishment time: . 2.0 to 3.0 minutes; punch needs to be stopped. . 733 Adjustment time: .734 Optimum reloading period: 3.0 to 4.0 minutes . .8 18.2 minutes. ERRORS, CHECKS AND ACTION Error Check or Interlock Recording: Output block size: Invalid code: Exhausted medium: Receipt of data: none. not possible. not possible. none. none. 244:073.100 • STANDARD EDP • R[I'()", CDC 160/160-A Input-Output 167 Card Reader INPUT-OUTPUT: 167 CARD READER § 073. .1 GENERAL .11 Identity: 167 Card Reader, Modell. 167-1. 167 Card Reader, Model 2. 167-2. .12 Description The CDC 167 Card Reader reads 80-column cards by means of a photoelectric sensing head, at a maximum rate of 250 cards per minute. The reading mechan.ism is a Burroughs 200 card per minu~ mechanism, modified by Control Data to run at 250 cards per minute and enclosed in a Control Data cabinet. An infinite- tooth clutch is used so that the effective reading rate is smoothly reduced to match any system limiting factors. Because there is only one reading station, verification of the reading is a responsibility of the program. However, an automatic check of the reading amplifiers is performed for every card read. Failure of the check provides a testable signal to the processor. Reading is accomplished serially, column-bycolumn, starting at column number one. Each column is transmitted to the processor as one 12bit word. With the 167 Model I, the reader selection External Function code initiates either a single card read or a free-run read. The Model 2 automatically translates each column from Hollerith to BCD code, and packs a pair of BCD characters into each computer word. The automatic translation may be overridden for reading binary cards in the Model 2. A command is available to stop the card reader. Only one stacker (which can hold 500 c.ards) is available. The data input command can specify a block of core storage for input data, in which case data from each card column is placed automatically in sequential locations until the block is full. Alternatively, there can be a single-word transfer command for each word to be transferred. Synchronization of the data transfer is automatic, but the computer pro gram timing must be watched so that the data is not lost by delayed execution of a data transfer command The program can test for this potential condition (Program Error Status Code). Data from each card column is available at intervals of 1.88 milliseconds. This reader is a relatively new unit and is offered as an economical reader that is slower than the 161O-A Control Unit with an IBM 088 Reader, which operates at 650 cards per minute. The reading mechanism is the same as that in the CDC 1617 Card Reader (refer to Report 24'3:074, CDC 1604-A); however, the 1617 has the facility of being manually switchable between two different computers. For example, the two systems may be the 1604/1604-A and the 160/160-A. © 1963 . 13 Availability: 4 months . . 14 First Delivery: . 1962. .2 PHYSICAL FORM .21 Drive Mechanism .211 Drive past the head: • 212 Reservoirs: .22 pinch rollers • none. Sensing and Recording Systems .221 Recording system: . 222 SenSing system: none. photoelectric . .23 Multiple Copies: none. .24 Arrangement of Heads Use of station: Stacks: Heads/stack: • Method of use: .3 EXTERNAL STORAGE .31 form of Storage .312 Phenomenon: 12. 1 column at a time. Positional Arrangement 80 columns at standard spacing • 12 rows. at standard spacing. all for data . all for data . .321 Serial by: . 322 P'arallel by: . 324 Track use: . 325 Row use: .33 1. standard 80-column punched cards. rectangular punched holes. .311 Medium: .32 reading. Coding 167-1 column binary card image; 1 column per word External: Internal: 167-2 Hollerith. 2 BCD char per word. .34 Format Compatibility: all devices using standard 80-column cards. .35 Physical Dimensions: standard 80-column cards. .4 CONTROLLER Al Identity: .43 Connection to Device • no separate controller; functions under control of processor. .431 Devices per controller: 1. .432 Restrictions: none. by Auerbach Corporation and BNA Incorporated 3/63 CDC 160/160·A 244:073.440 §073. • 44 Data Transfer Control • 441 Size of load: • • . • • 1 column (1 word input command). 1 to N cards (free run). core storage. . 442 Input-output areas: .443 Input-output area 1 word. access: .444 Input-output area in 160 in block input mode. lockout: none. .445 Table control: • 446 Synchronization: automatic, block mode. by program, I-word mode • status codes in reader. . 447 Synchronizing aids: 160 processor, or 160-A processor using Normal channel . 1 word per input command. 0.38. 20.2 . Component: .522 .523 .524 • 525 .526 Output: Stepping: Skipping: Marking: Searching: feed 1 card, or free run; then input 1 block. none. none. none . none. none. • 53 Code Translation: matched codes. .54 Format Control: none. • 55 Control Operations • 56 •6 PERFORMANCE .61 Conditions: . .62 Speeds no. no. no. no. no. no. yes. no. no. no. yes. yes. yes. yes. Condition: . Msec per column: . Percentage: .7 EXTERNAL FACILITIES .71 Adjustments: .72 Other Controls .73 • . • • none . disable row 12 "0" check . illuminated switch. used when reading cutcorner cards. Loading and Unloading .731 Volumes handled Storage Hopper: • . • Stacker: .732 Replenishment time: .733 Adjustment time: • .734 Optimum reloading period: .8 Reading: yes. Input area overflow: Invalid code: Exhausted medium: Imperfect medium: Timing conflicts: • • • see Paragraph . 63. Capacity 500 cards. 500 cards • O. 2 min. Device does not need to be stopped. no adjustments required. 2.0 minutes. ERRORS, CHECKS AND ACTION Check or Interlock Error yes. .621 Nominal or peak speed: 250 cards/minute. 3/63 160-A processor using Buffer channel. N words per input command. O. 02; approx. 1. 1. Function: Form: •• Comment: Testable Conditions Disabled: Busy device: Output lock: • Nearly exhausted: • Hopper empty: Stacker full: Ready: Feed failure: • Request for data too late: • • • • Read amplifier failure: 100• Condition: . . • • Msec per column: • Percentage: Input-Output Operations Disable: • • • • • Request interrupt: Offset card: Select stacker: Select format: Select code: Demands on System Component: Blocks .521 Input: 1.88 msec. none; infinite tooth clutch • 250 cards/minute. This can be obtained even following a single Card Read if reader is reselected within 4 msec after column #80 is read • 1 card of 1 to 80 columns. 1 to N cards. area defined by instruction addresses. . 51 • 52 70 msec • 160 processor. N words per input command . 240. PROGRAM FACILITIES AVAILABLE . 512 Block demarcation: .63 240 msec • Component: Condition: . . • Msec per card: • Percentage : .5 .511 Size of block: .622 Important parameters Card cycle time: Time till first column read: Time between columns: .623 Overhead: • • • .624 Effective speeds: check or read amplifiers Action generate status code. none. all codes valid. check generate status code. none • check 00 progra m timiog check interlock Card oot fed: Motor power off: Amplifier failure, feed fa Uure, or progra m check timing error: generate status code. generate status code. generate sta tus code. generate disconnect code. 244:074.100 • STANDARD EDP • CDC 160/160-A 17Q Card Punch REPORTS . INPUT-OUTPUT: 170 CARD PUNCH § 074. .12 .1 GENERAL • 11 Identity: • 12 Description Description (Contll.) The mM 523 Summary Punch can operate at 100 cards per minute at maximum speed. 170 Card Punch • . 13 Availability: •. 4 months • . 14 First Delivery: . 1960 • The CDC 170 Card Punch is a unit which combines an adapter and an mM 523 Summary Punch. The 170 can connect to the 160/160-A, the 1604/1604-A or the 924/924-A Processors. © 1963 by Auerbach Corporation and BNA Incorporated 3/63 244:081.100 • STANDARD EDP _ REICRTS CDC 160/160-A Input-Output 1612 Printer INPUT-OUTPUT: CDC 1612 PRINTER § 081. .1 GENERAL • 11 Identity: · 12 Description High Speed Printer. CDC 1612 Unit. • 233 Types of master Multilith:. . . Spirit: . . . . Pressure sensitive: Heat transfer:. . . . 24 The 1612 High Speed Printer consists of an Anelex Series 4-1000 model printer mounted on top of a 1612 Printer Control Unit. The printer system, which is designed for use as a peripheral unit for the 160 and 1604 series CDC computers, prints the computer data output on fan-fold forms at a nominal maximum rate of 1,000 lines per minute. An alternative rate of 667 lines per minute is possible and may be selected by actuating a single switch in the printer control unit. This 667 line rate is effected by reducing the speed of the print dr~m and, as a result, produces printing with improved vertical registration. 2 to 4 months. .14 First Delivery: 1962. .2 PHYSICAL FORM .21 Drive Mechanism Range of Symbols 0 10, Ot09. 26, A to Z. 28, see below. upon request. yes, see below. no. 64. See Data Code Table No.2. One to 120 words are sent to the print buffer before printing. Printing is accomplished by the usual "on -the -fly" technique. .Automatic single-space paper advance follows printing. and line skipping is provided by means of a p:I'epunched tape in the printer. Eight channels on the tape. selected by programmed instructions. control the vertical formats. Availability: printing. 1. 120. prints one line at a time. Numerals Letters: •• Special: •. Alternatives: FORTRAN set: •• Req'd COBOL set: • Total: . • . . . One print line consists of a maximum of 120 character positions; each position can print from a 64character set. Maximum print rates are achieved when use is limited to the 48-character FORTRAN subset of the total character set and a maximum of two line feeds following each print line, otherwise speeds are reduced by a factor of two. .13 krrangement of Heads Use of station: Stacks: Heads/stack: • Method of use: .25 yes . yes. yes. yes. Special characters in FORTRAN set Additional characters in fUll set • period - minus + plus =equal ( open parenthesis ) close parenthesis / slant * asterisk , comma f not equal $ dollar : colon blank less than or equal greater than or equal < less than > greater than 1\ and V or -, not +arrow right +arrow up +.arrow down "" identity %percent [ open bracket ] close bracket ; semicolon :s ~ Note: For business applications""" %$ replaceA V -, .211 Drive past the head: • • 212 Reservoirs: • 22 . .. on-the-fly hammer stroke against engraved drum. .31 Form of Storage .311 Medium: • .32 . .. .323 Bands: .324 Track use: . • 325 Row use: 5. 1. © 1963 continuous fanfold sprocketpunched stationery. printing of engraved chars • Positional Arrangement .321 Serial by: .322 Parallel by: Multiple Copies • 231 Maximum Number Interleaved carbon: Card stock: EXTERNAL STORAGE .312 Phenomenon: Sensing and Recording Systems • 221 Recording system: . 23 sprocket drive push and pull • none • .3 by Auerbach Corporation and BNA incorporated I line at 6 lineS/inch • 120 columns at 10 chars/ inch • 1. all for data • all for data. 5/63 244:081.330 § CDC 160/160-A 081. '.56 .33 Coding: as in Data Code Table No.2. .34 Format Compatibility: none. .35 Physical Dimensions · · ·· · ·· ·· .351 Overall width: .352 Length: .353 Maximum margins Left: • Right: .4 CONTROLLER .41 Identity: .42 Connection to System • 43 .6 PERFORMANCE .61 Conditions • • • ·· · ·· . I B: 1. none. Data Transfer Control ·· .441 Size of load: .442 Input-output areas: . 443 Input-output area access: .444 Input-output area lockout: • 445 Table control: • 446 Synchronization: 1 to 120 words. core storage; 1 char per word, in 6 low-order bit positions. each word. yes, in 160. none. automatic. •5 PROGRAM FACILITIES AVAILABLE • 51 Blocks . 511 Size of block: . • 512 Block demarcation Output: . · .52 Input-Output Operations .521 . 522 .523 . 524 Input: Output: Stepping: . Skipping: . II B: . 62 Connection to Device 1 line of up to 120 characters, address limits in instruction. .525 Marking: . status code . print 1 line. Step 0, 1, or 2 lines. 8 format channels for skipping are available, controlled by a tape loop. none. . 53 Code Translation: . automatic. .54 Format Control: control of skipping using paper tape loop. Speeds · 621 Nominal or peak speeds I A: . II A: . I B: . . . . . . . . . lIB:. . . . . . . . . • 622 Important parameters Paper speed: Line length:. . . . Line spacing: . . . Character spacing: Drum cycle, I A & II A: . . . . •. Drum cycle, I B & II B: .623 Overhead: • • • .624 Effective speeds I A: . • Control Operations 5/63 yes. yes. as in skipping. no. 1,000 lines/min . 500 lines/min. 667 lines/min . 333 lines/min. 25 inches/sec., max 9,000 lines/min., max. 120 columns . 6 lines/inch. 10 chars/inch . 60 msec. 90 msec . single clutch point. • 63 1,000/ (1+ [(Nt6)/9]) lines/min • II A: 1,000/ (2+[N/9]) lines/min . I B: • 667/ (1+[(N +6)/9]) lines/ min. II B: 677/ (2+[N/9]) lines/min . N: interline spacing in lines • Note: [xl means "integer part of x." These are shown graphically at end of the section. Demands on System: . 1 to 2 msec. per line . .7 EXTERNAL FACILITIES · 71 Adjustments Adjustment Character phasing: Penetration control: Form positioning: Disable: . Request interrupt: Select format: Select code: FORTRAN set, print drum 1,000 rpm. FORTRAN set, print drum 667 rp{ll. full character set, print drum 1, 000 rpm. full character set, print drum 667 rpm • II A: ··.. .55 provided power·is on, paper is not in motion, and printer is not out of paper. I A: 3.5 inches. 3.5 inches. .431 Devices per controller: 1. .432 Restrictions: • none. • 44 Printer ready: . Print Control Unit. · · .421 On-line: .422 Off-line: • 4 to 19 inches. up to a 17-inch form. Testable Conditions paper tension: Top of form: Single line feed: Paper tractor adjustment: Method Comment performs fine adjustments of print quality to correspond to motor speed selection. adjusts hammer mounting knob plate print cylinder gap to accommodate different 'thickness of paper. adjusts line of print on knob form. knob adjusts paper tension. moves to top of form button under control of format channel B. ad vances pa per. button adjustable provides horizontal pos!tionlng for paper widths form of 4 to 19 inches. tractor knob INPUT-OUTPUT: CDC 1612 PRINTER § 244:081.720 081. •72 Other Controls Function Comment Motor Speed: switch Printer Ready: combination bulton-lamp switch 160/1604 Selector Switch: .73 Form selects print drum speed of either 1. 000 or 667 rpm. Indicates that printer is "ready... selects the correct inputs for 1604-A or 160 computer. Loading and Unloading .731 Volumes handled:.. pap~r stack 12 to 14 inches high. . 732 Replenishment time: 1 min. printer must be stopped. © 1963 .733 Adjustment time: • • • 1 to 3 minutes • . 734 Optimum reloading period: • • • • • . 34 minutes • Basis: using 1,000 17-inch 2-part forms, printing full character set, 1 line every inch. .8 ERRORS, CHECKS AND ACTION: Error Recording: Output block size: Invalid code: Exhausted medium: Imperfect medium: by Auerbach Corporation ond BNA Incorporated Check or InterloCk Action none. none. all codes valid. micro -switch check micro-switch check stop printer • stop printer. 3/63 CDC 160/160-A 244:081.800 EFFECTIVE SPEED CDC 1612 PRINTER Condition: Print cylinder revolving at 1,000 r.p.m. 6,000 5,000 4,000 3,000 2,000 1,000 900 800 700 600 500 400 Effecti ve Speed: Printed Lines Per Minute Restricted FOR TRAN Set 300 Full Character Set 200 1 100 90 80 70 60 50 40 30 20 o 1/2 1 2. Inter-Line Pitch in Inches 3/63 3 4 5 244:081.801 INPUT-OUTPUT: CDC 1612 PRINTER EFFECTIVE SPEED CDC 1612 PRINTER Condition: Print cylinder revolving at 667 r.p.m. 6,000 5,000 4,000 3,000 2,000 1,000 900 800 700 600 500 400 Effective Speed: Printed Lines Per Minute 300 Restricted FORTRAN Set 200 FuJI Character Set ~ 100 90 80 70 60 50 40 30 20 o 1/2 1 2 3 4 5 Inter-Line Pitch in Inches © 1963 by Auerbach Corporation and BNA Incorporated 3/63 244:082.100 .SIANOARO EDP • CDC 160-A Input-Output 166 Printer, Model 2 fiU'DRIS INPUT-OUTPUT: 166 PRINTER, MODEL 2 § . 24 082. .1 GENERAL .11 Identity: . 12 Description: Use of station: Stacks: Heads/stack: . Method of use: 166 Line Printer. Model 2 . .25 The 166 Model 2 Printer is a buffered version of the 166 Model 1 Printer. The Model 2 is now the standard printer for the CDC 160- A system. The faster 1612 Printer System can be used where faster printing is required. Data for a full line of print is transferred to the 166-2 Printer. and the processor is free to continue in its program. . Availability: .14 First Delivery: .2 PHYSICAL FORM .21 Drive Mechanism .211 Drive past the head: . .212 Reservoirs: · 22 .222 Sensing system: .23 10 o to 9. 26 28 A to Z. see Data Code Table No.2 3 for business or scientific. yes. yes. Alternatives: FORTRAN set: Basic COBOL set: Total: ...· 64. DrumB 26 o to 9. A to Z. 10 . -+=() 10 Numerals: Letters: Special: Alternatives: FORTRAN set: Basic COBOL set: Total: . / * , blank none. yes. no. 46. DrumC 4 months . Numerals: Letters: Special: Alternatives: FORTRAN set: Basic COBOL set: Total: 1962. ..· sprocket drive; paper punched both sides. none. on-the-fly hammer stroke against interchangeable engraved drum of 120 print locations. none. .3 EXTERNAL STORAGE .31 Form of Storage .311 Medium: . 312 Phenomenon: .32 Multiple Copies · 231 Maximum number Interleaved carbon: • 233 Types of master Multilith:. . . . . Spirit: . . . . . . Pressure sensitive: Heat transfer: . . . Range of Symbols Numerals: Letters: Special: Sensing and Recording Systems .221 Recording system: printing. 1. 120. one line at a time. Drum A (standard supplied) The 166 Printer is a relatively new printer offered for use with the 160 and 160- A Computers. It prints alphameric data from a 64-character set in a 120column line. The peak speed is just under 150 lines per minute when printing the entire character set. Two other print drums are easily interchangeable with this one; a 46- and a 16-character model. The 46-character set drum has the numeric field engraved twice around the circumference, and a peak numeric printing speed of 300 lines per minute is obtainable. Another variation of the print drum contains four repeated 16-character fields around the drum, and offers a peak printing speed of 600 lines per minute. The printer is made by Holley Computer Products Company. .13 Arrangement of Heads .321 Serial by: .322 Parallel by: .324 Track use Data: .325 Row use: © 1963 continuous fanfold sprocket punched stationery. or roll paper. prin1iIi.g . Positional Arrangement 1- to 6-part forms. yes. yes. yes. yes. ·. ·.. 10 o to 9. none . 6. . - ,+ $ * none. no. no. 16, in 4 fields around drum. by Auerbach Corporation and BNA Incorporated line of print at 6 lines per inch. 120 print positions at 10 per inch. 120 max. all for data. 6/63 244:082,330 § CDC 082. .55 .33 Coding: as in Data Code Table No.2. . 34 Format Compatibility: none. •35 Physical Dimensions .351 Overall width: • 352 Length: .353 Maximum margins: .4 CONTROLLER .41 Identity:... . 42 COIUlection to System .56 . 442 Input-output areas: .443 Input-output area access: . 444 Input-output area lockout: .445 Table control: . . 446 Synchronization: .6 PERFORMANCE .61 Conditions I: II: . III: none. none. automatic . .51 Blocks . 511 Size of block: . . 512 Block demarcation Output: 64-char drum. 46-char drum. 16-char drum. asynchronous. synchronous. IV: V: • Speeds . each word. PROGRAM FACILITIES AVAILABLE . no. see ready. no. no. yes. no .. yes. yes. yes. yes • .621 Nominal or peak speed I: first 60 or 62 words output from computer in 1 output operation (120 BCD char). core storage • .5 Testable Conditions . .62 Data Transfer Control .441 Size of load: no. no. no. select synchronous or asynchronous printing. yes . Disabled: Busy device: Output lock: Nearly exhausted: • Hopper empty: Stacker full: Ready: Paper moving: Drum stationary: Switched off-line: • Connection to Device .431 Devices per controller: 1. .432 Restrictions: none. . 44 Disable: Select format: Select code: Other: . no separate controller; part of printer. .421 On-line: • . . • . • .1. .422 Off-line: Use Associated equipment Tape-to-printer: 603 or 163 Tape Unit. Card reader-toprinter: ••• • 167 Card Reader. . 43 Control Operations Status request: 12 in. to 22 in. by ? in. increments. no limit except storage • no restrictioris; forms can be moved to print any 12inch portion of 17 inch wide paper. 60 or 62 words . addresses in instruction. .52 Input-Output Operations . 521 .522 . 523 . 524 . 525 • 526 Input: • • Output: Stepping: Skipping: Marking: Searching: • none. output 1 block • none. 8-channel format tape. none • none. • 53 Code Translation: automatic • . 54 Format Control: . only as programmed • lines/minute, if 4 . . 150successive char on drum ignored and used for advancing paper. II, numeric: • • • . • 300 lines/minute. II, alphameric: 150 lines/minute. III (numeric only): • • 600 lines/minute. .622 Important parameters Skipping speed: • • 5800 lines/ minute (9.67 msec/line) . Paper advance time Single space: 25 msec. Double space: • • 35 msec. 150 rev/mmute Drum speed: • • • (400 msec!rev). Time to fill buffer:. • 1 to 2 msec . .623 Overhead: • • . •• single-point clutch (synchronous print). infinite-point clutch (asynchronous print) • • 624 Effective speeds, lines per minute. I, IV: 142. I, V:. . . . . . . 150. II, II, II, II, IV, alphameric: IV, numeric: . . V, alphameric: . V, numeric: III, IV: . . . . III, V: • . • . 150. 300. asynchronous only. asynchronous only. 480. 600. See graph at end of section. • 63 l 6/63 l~O-A Demands on System: I AUERBACH I @D . 1 msec per line. INPUT-OUTPUT:. 166 PRINTER, MODEL 2 § 244:082.700 082. .732 Replenishment time: .7 EXTERNAL FACILITIES • 71 Adjustments .72 .73 Adjustment Method Comment Horizontal alignment: operator Change char code disc: Replace print drums: Change ribbon: operator operator operator coarse and fine tractor adjustments. requires less than 1 minute. requires less than 1 minute. requires less than 2 minutes. • 733 Adjustment time: • .734 Optimum reloading period: • . • . . 2 to 4 minutes. printer needs to be stopped, but not computer • 5 to 10 minutes • 300 minutes. Basis: 750 Single-spaced pages at 150 lines per minute. Other Controls Function Form Comment Select off-line output: Initiate off-line operation: Step: Backspace: switch switch switch switch selects tape-to-printer. off-line. 1 line of off-line printing. backspace tape, off-line. Loading and Unloading .731 Volumes handled Storage Hopper: . Stacker: . Capacity ? sets of 6-part forms. ? sets of 6-part forms. © 1963 .8 ERRORS, CHECKS AND ACTION Error Check or Interlock Recording: Output block size: Invalid code: Exhausted medium: Imperfect medium: Timing conflicts: none. none. none. interlock none. interlock by Auerbach Corporation and BNA Incorporated Action halt, program sense. wait. 3/63 244:082.800 CDC 160-A EFFECTIVE SPEED CDC 166·2 PRINTER 6,000 5,000 4,000 3,000 2,000 1,000 900 800 700 600 500 Printed Lines per Minute ~ 400 ~""- 300 Lr-200 / '" ~ I-t.. 11-0... VI """"'"" using only 60 characters, synchronou's foooo. 100 90 80 Vi FORTR'AN drum, asynchronous, numerals I I 64-character drum, asynchronous FORTR'AN drum, a'synchronous .......................... -.............. ~ ---If ----------------- It 64-character drum, .............:: (~ 1-00 ... 16-charactr drum, asynchron,u's 70 60 50 40 30 20 o 1/2 1 2 Interline Space, in Inches 3/63 3 4 5 244:091.100 _'STANDARD EDP _ REF()~TS CDC 160/160-A Input-Output CDC 603 Magnetic Tape INPUT-OUTPUT: CDC 603 MAGNETIC TAPE UNIT § 091. •1 GENERAL • 11 Identity: .12 Description Magnetic Tape Unit. 603. • 212 Reservoirs Number: Form: . . Capacity: . .213 Feed drive: .214 Take-up drive: . · 22 Sensing and Recording Systems '. 221 Recording system: . The CDC Magnetic Tape Unit, which uses pneumatic capstan drive, is a new addition to the 160-4 system · 222 Sensing system: . and provides a replacement for the 163 and 164 Mag- · 223 Common system: netic Tape system units. Tapes of the 163 and 164 units are recorded at low density (200 rows per inch) · 23 Multiple Copies: . and can be read with the 603 unit set (by manual · 24 Arrangement of Heads sWitch) at low density. Tape speed is 75 inches per second, resulting in data rates of 15,000 and 41,667 Use of station: . rows per second for recording densities of 200 and Stacks: . . . . . 556 rows per inch, respectively. Tapes recorded on the 603 are compatible with the IDM 729 magnetic Use of station: . tape units, which can operate at the above densities Distance: . (mM 729 Models II, IV, V, and VI). The 603 used a read-after-write check. Transverse and longitudinal Stacks: . . parity are checked at the controller, and a parity Heads/stack: . error condition can be checked by the processor. Method of use: • The Model 603 Tape Unit is physically identical to Use of station: . the CDC Model 606 Tape Unit, but has a tape speed Distance: . of 75 inches per second, which provides a data rate half that of the 606. Tapes recorded by either Stacks: . . model are compatible with the other. Detailed inforHeads/stack: . mation about program control of the 603 is not yet Method of use: . available. The 162-1 controller normally has four tape units connected to it; up to eight can be connected on specialorder. A feature of the 162-1 is that one tape unit can be used for tape-to-printer transcription at the same time the other tape units are available for on-line use. Alternatively, a card-to-tape transcription may proceed (using the 162-1 controller), but this operation prevents the use of the other tape units. The 160/16o-A previously used the 163 or 164 Magnetic Tape Systems, which produced IDM-compatible tape at 200 bits per inch only. A number of 160/160-A systems willstill use these tape systems. CDC systems also used the Model 1608 Control Unit and IBM 729 II or IV Tape Units; this controller is now supplied only if available. . 13 Availability: . . 4 to 6 months. · 14 First Delivery: early 1963. ·2 PHYSICAL FORM · 21 Drive Mechanism . 211 Drive past the head: . pneumatic capstan. © 1963 ·3 EXTERNAL STORAGE · 31 Form of Storage · 311 Medium: . . . . 312 Phenomenon: . · 32 2. vacuum. each about 7 feet. motor. motor. magnetic head. magnetic head. two heads. none. erase. 1. recording. O. 4375 inch from erase head. 1. 7. 1 row at a time. sensing. O. 3 inch from recording head. 1. 7. 1 row at a time. plastic tape with magnetizable surface . magnetization. Positional Arrangement .321 Serial by: 1 to N rows at 200 or 556 rows/inch. 7 tracks. · 322 Parallel by: · 324 Track use Data: . . . 6. Redundancy check: . 1. Timing: . . . . . o (self-clocking). Control signals: O. Unused: • O• Total: . 7• • 325 Row use Data: . .' 1 to N. Redundancy check: . 1. Timing: . . . • . O. Control signals: o (record and segment marks are optional). Unused: . O. Cap: " O. 75-inch inter-block gap • 6. O-inch end-of-file mark. by Auerbach Corporation and BNA Incorporated 3/63 244:091.330 § CDC 160/160-A 091. .33 Coding: . . . . . • . • • BCD mode; one tape ~w per character as in Data Code Table No.3, even parity. • 34 Format Compatibility:. IBM BCD and binary codes at 200 and 556 rows per inch. .35 Physical Dimensions • 351 Overall width: • 352 Length:. . . . . •4 CONTROLLER .41 Identity:.... . 42 Connection to System 0.50 inch• 2,400 feet per reel. .525 Marking: . . . • • . . • end-of-file mark, preceded by an automatic six-inch gap, followed by a longitudinal parity character and the regular interblock gap • none. • 526 Searching: . . • . • 53 Code Translation: matched codes . · 54 Format Control: . none. • 55 Control Operations Disable: . . . . . . Request interrupt: . Select format: Select code: Rewind: " . Unload: . • • . Request status: • Control Unit 162-1. . 421 On-line: .422 Off-line: 1. one of the tape units can op- .56 erate in an off-line mode with the printer while the other tapes are used online. A tape unit can be used in a card-to-tape offline conversion, but this prevents use of the other tapes connected on-line to the 162-1. • 43 Connection to Device: . up to 4 per 162-1; up to 8 by special order • . 44 Data Transfer Control • 441 Size of load: . . . . .442 Input-output areas: . 443 Input-output area access: . . . . . • 444 Input-output area lockout: . . • . • .445 Table control: . . .446 Synchronization: . 1 to N words, limited by available core storage. core storage • each word. PROGRAM FACILITIES AVAILABLE .51 Blocks Disabled: . . . • . Output lock: : . . Nearly exhausted: Busy controller: . End-of-file mark: End-of-medium marks: Odd or even parity selected: . . . . . . • Transverse or longitudinal parity error: . PERFORMANCE · 61 Conditions I: . II: III: IV: .62 .5 Testable Conditions .6 yes, in 160. none. automatic. by rewind and unload. no . write 1 or 2 rows per word. odd/even parity. yes. yes . yes . yes. no. no. ? yes. yes. yes. yes . high density (556 char/in. ). low density (200 char/in. ). unit on Buffer channel. unit on Normal channel. Speeds Condition . 511 Size of block: 1 to N words, limited by available core storage; 1 or 2 rows per word, selected by program. . 512 Block demarcation Input: . . . . • • • gap on tape or cut-off specified in instruction address. Output: . . . . . • . • cut-off specified in instruction address. .52 Input-Output Operations .521 • 522 . 523 .524 Input:. • • Output: . . Stepping: . Skipping:. 3/63 1 block forward. 1 block forward. backspace 1 record • forward or backward to end-of-file mark. II · 621 Nominal or peak speeds: . . . . . 41,667 • 622 Important parameters Name Tape speed: 75 ips Density: 556 char/in. Start or stop time: 4 to 8 msec (*) Full rewind time: 1. 3 min. Interblock gap: 0.75 in. .623 Overhead: 16 msec/block (***) • 624 Effective speed, characters/sec: 41, 667N(N +698) 15,000. 75 ips. 200 char/in . 4 to 8msec (*) 1. 3 min. 0.75 in. 16 msec/block (***) 15,000N/ (N+240) • (See Graph) (*) Estimate. See 1:010.400. (***) Estimate. See 1:010.400. INPUT-OUTPUT: CDC 603 MAGNETIC TAPE UNIT § 091. .63 244:091.630 .73 Demands on System Component Condition msec per or Percentage char 160 Processor: I 0.024 100. 160 Processor: II 0.0667 100. 160-A Core Storage: I, III 0.0192 80. 160-A Core . 0.0192 Storage: II, III 29. 160-A Processor: lor II; 0.024 or 100. 0.0667 IV .7 EXTERNAL FACILITIES ,71 Adjustments Adjustment: Method: . Comment: . recording density. switch. select high or low density. Loading and Unloading .731 Volumes handled Storage: Capacity: . . • . • 732 Replenishment time: • .734 Optimum reloading period: ••. , . . • .8 Other Controls Function Form Comment Unit Number Selector: dial digit 1 to 4. File protection ring: plastic ring absence 6f ring inhibits affixed to tape writing. tape reel Load Point: button lowers tape into reservoirs and winds tape forward to load point. Unload: button removes tape from reservoirs and raises upper portion of head assembly. © 1963 4 minutes. ERRORS, CHECKS AND ACTION Error ,72 reel. 2,400 feet. 5, 000, 000 char for 1, 000 char blocks at low density. 11, 300, 000 char for 1, 000 char blocks at high density. 1. 0 to 1. 5 minutes. Check or Interlock read after write lateral and longitudinal parity checks, Input area overflow: none, OUtput block size: none. Invalid code: ? Exhausted medium: interlock Imperfect medium: recording check. Timing conflicts: ? check in controller Parity error: Transmitting data: include parity bits. Recording: Reading: by Auerbach Corporation and BNA incorporated Action program source. program source, program source. program source. 3/63 244:091.800 § CDC 160/160-A 091. EFFECTIVE SPEED CDC 603 MAGNETIC TAPE UNIT 1,000,000 7 4 2 100,000 7 4 ~~rtY V'\\\G\\ D 2 Effective Speed, char/sec. /' 10,000 " ./ 7 ~ ~~ 10- 1 LOW DENSITY ~ /~ ~ 4 ~y ~ 2 ~ 1,000 7 ~ ~V ~ I II" 4 2 100 2 10 4 7 2 100 4 7 1,000 Characters Per Block 3/63 2 4 7 10,000 244:092.100 • _ STANDARD EDP REPORl'S CDC 160-A Input - Output CDC 606 Magnetic Tape INPUT-OUTPUT: CDC 606 MAGNETIC TAPE UNIT .§ 092. • 12 .1 GENERAL . 11 Identity: . .12 Description CDC 1604-A and a CDC 160-A, control can be switched from one computer to the other either manually or by program. Magnetic Tape Unit. CDC 606. The CDC 606 Magnetic Tape Unit, which uses pneumatic capstan drive, is a new addition to the 160/160-A system and provides a replacement for the 163 and 164 Magnetic Tape system units. Tapes of the 163 and 164 units are recorded at low density (200 rows per inch), and can I;>e read with the 606 unit set at low density. Data rates of the 606 are 30,000 and 83,400 characters per second for recording densities of 200 and 556 rows per inch, respectively. Tapes recorded on the 606 are compatible with the IBM 729 magnetic tape units, which can operate at the above densities (IBM 729 Models II, IV, V, and VI). The 606 uses a read-after-write check. Transverse and longitudinal parity are checked at the controller, and a parity error condition can be checked by the processor. Reading ahd writing can be performed only in a forward direction; searching for Ear, end of record, file mark; and rewinding can be performed in either direction. The maximum rewind time for a 2, 400-foot tape is 80 seconds. The Model 606 Tape Unit is physically identical to the CDC Model 603 Tape Unit, but has a tape speed of 150 inches per second, which provides a data rate twice that of the 603. Tapes recorded by either model are compatible with the other. Data is transferred as either one or two characters per computer word, and selection is under program control. High density recording is not allowed with one character per word format, as the data rate would be high enougIJ. (one word every 12 microseconds) to cause loss of data. During high density operation (one word every 24 microseconds), when running properly, this tape transfer should be the only transfer occurring in the system, to avoid loss of data. A tape transfer using the Auxiliary Memory Unit (Model 169) is independent and usable for a simultaneous transfer if the computer does not use the 169 storage during the transfer. The 162- 2 controller normally has eight tape units connected to it. A feature of the 162- 2 is that one tape unit can be used for tape-to-printer transcription at the same time the other tape units are available for on-line use.. However, a card-to-tape transcription using the 162- 2 controller prevents the use of the other tape units. The CDC 606 Magnetic Tape Unit, when controlled by the CDC 1615 Control Unit, forms a magnetic tape system which can be connected to one or two computers. If connected to two computers, such as a © 1963 Description (Contd. ) The 160/160-A Computer previously used the 163 or 164 Magnetic Tape Systems, which produced IBMcompatible tape at 200 bits per inch only. A number of 160/160-A systems win still use these tape systems. CDC 160/160-A systems also used the Model 1608 Control Unit and IBM 729 II or IV Tape Units; however, this controller is now supplied only if available. .13 Availability: • . 2 to 4 months. .14 First Delivery: August, 1962. .2 PHYSICAL FORM .21 Drive Mechanism • 211 Drive past the head: . .212 Reservoirs Number: • Form: .• Capacity: • .213 Feed drive: . 214 Take-up drive: • • 22 pneumatic capstan. 2. vacuum. each about 7 feet. motor. motor. Sensing and Recording Systems • 221 Recording system: • • 222 Sensing system: . • 223 Common system: magnetic head. magnetic head • two heads. .23 Multiple Copies: • none. .24 Arrangement of Heads Use of station: • Stacks: • • • . . erase. 1. Use of station: . Distance: . recording. O. 4375 inch from erase head. 1. Stacks: .• Heads/stack: . Method of use: • Use of station: • Distance: . . . Stacks: • . • • . Heads/stack: •• Method of use: . .3 EXTERNAL STORAGE • 31 Form of Storage • 311 Medium: . . • . . by Auerbach Corporation and BNA Incorporated 7. 1 row at a time. sensing. O. 3 inch from record head. 1. 7. 1 row at a time. plastic tape with magnetizable surface. 5/63 244:092.312 § CDC 160-A 092. .312 Phenomenon: . · 32 magnetization. · 322 Parallel by: · 324 Track use Data: . . . Redundancy check: • Timing: • . . . . Control signals: Unused: • Total: • . 325 Row use Data: . Redundancy check: . Timing: • . . . . Control signals: Unused: • Gap: PROGRAM FACILITIES AVAILABLE .51 Blocks .511 Size of block: Positional Arrangement · 321 Serial by: .5 1 to N rows at 200 or 556 rows/inch. 7 tracks. .512 Block demarcation Input: . 6. Output: 1. o (self clocking). O. O. 7. 1 to N. 1. O. . 52 .521 Input:. . . 1 block forward, with cut-off available at N words. . 522 Output: . . .523 Stepping:. .526 Searching: . . . . 1 block forward of N words . 1 block forward. I block backward. erase 3. 5 inches forward (to skip defective tape areas). to end of file mark in either direction • end-of-file mark, preceded by an automatic 6-inch gap, followed by a longitudinal parity character and the regular interblock gap • none. .53 Code Translation: matched codes. . . 54 Format Control: • none . .55 Control Operations .524 Skipping:. . 525 Marking:. .33 Coding: . • 34 Format Compatibility:. IBM BCD and binary codes at 200 and 556 rows per inch. • 35 . 351 Overall width: . 352 Length:. . . . .4 CONTROLLER . 41 Identity: .421 On-line: .422 Off-line: . 43 · 44 Connection to Device: 0.50 inch . 2,400 feet ,Per reel. 162-2 Control Unit, used only with 160/160-A. Also 1615 Control Unit can be used, usually for CDC 1604-A. 1615 can be switched manually or by program between ~604-A and 160/160-A computers. Disable: . . . . . Request interrupt: . Select format: Select code: Rewind: . . . Unload: • . . . Request status: .56 Testable Conditions Disabled: • . • . . Output lock: . . . Nearly exhausted: Busy controller: • End-of-file mark: End-of-medium mark: . Odd or even parity selected: • . . • . . . Transverse or longitudinal parity error: . . 1. none. up to 8 per 162-2 or 1615. 1 tape unit using the 162- 2 can be operating in a tape to printer mode while the 7 others are available to the computer. by rewind and unload . no. write 1 or 2 rows per word. odd/even parity . yes. yes. yes. yes. no. no. ? yes. yes. yes. yes. Data Transfer ContI;"ol .441 Size of load: . • . . . 442 Input-output areas: · 443 Input-output area access: . • . . . • 444 Input-output area lockout: . . . . . · 445 Table control: . . • 446 Synchronization:. 5/63 as in Data Code Table No. 3 for BCD mode. also binary mode. Physical Dimensions gap on tape or instruction address. instruction address. Input-Output Operations o (record and segment marks are optional). O. O. 75-inch inter-block gap. 6. O-inch end-of-file mark. 1 to N words, limited by available core storage; 1 or 2 tape char per word, selected by program. 1 to N words, limited by available core storage • core storage. •6 PERFORMANCE .61 Conditions each word. I: . none. none. automatic. II: III: IV: high density; 556 char/inch. low density; 200 char/inch. 1 char per computer word. 2 char per computer word. INPUT - OUTPUT: CDC 606 MAGNETIC TAPE UNIT § 092. .62 • 72 Speeds Other Controls Function . 621 Nominal or peak speeds High density: . • . . • 83, 400 char per second. Low density: . . • . . 30, 000 char per second. .622 Important parameters High density Low density Density: . . . • . . 556 char/in. 200 char/in. Time between char: 121J.s, avg. 331J.s, avg. Tape speed: .•• 150 in/sec 150 in/sec. Start time; msec: • 3.0 3. O. Stop time; msec: •. 2. 7 2.7. Time from tape select till start recording; msec: • . • . • . • • 3.3 3.3. Time from tape select till start reading; msec: . . . . • • 5.3 5.3. Full rewind time: 1. 3 minutes 1. 3 minutes. Interblock gap:.. O. 75 inch 0.75 inch. .623 Overhead: . • • 8 msec/block 8 msec/block. .624 Effective speed, char/sec High density: . . . . • 83,40ON/(N + 698). Low density: • • . . . 30,000N/(N + 240). (see graph at end of this section) . 63 244:092.620 Form Comment Unit Number dial Selector: File protection plastic ring ring: affixed to tape reel button Load Point: Unload: .73 button select I of 8 addresses. absence of ring inhibits tape writing. lowers tape into reservoirs and winds tape .forward to load point. removes tape from. reservoirs. Loading and Unloading .731 Volumes handled Storage: • Capacity: • . . . • 732 Replenishment time:. .734 Optimum reloading period: • . . • . • • reel. .2,400 feet; for 1,000 char blocks, 5, 000, 000 at 200 char/inch; 11,300,000 chars at 556 char/inch. l. 0 to l. 5 minutes • 4 minutes • Demands on System Component 160 Processor: Condition Msec per block Percentage 4.0 + O. 0l2C 4.0 + O. 033C I II 160-A Core Storage: I, III not an allowable condition. O.OlOC, max. 83, max. 0.02OC, max. 60, max. O. OlOC, max. 30, max. I, IV II, III II, IV .7 EXTERNAL FACILITIES .71 Adjustments Adjustment: Method: • Comment: • 100. 100. recording density. switch. selects high or low density, but can be overridden by program changes. © 1963 •8 ERRORS, CHECKS AND ACTION Error Check or Interlock Recording: read after write with lateral parity check Reading: lateral and longitudinal parity checks lnput area overflow: Output block size: Invalid code: Exhausted medium: none. Imperfect medium: 'Timing conflict: Parity enor~ . by Auerbach Corporation and RNA Incorporated none. all codes accepted. reflective spot on tape Action indicator, alarm and program sense. indicator, alarm and program sense. halts tape: programmed sense. none. none. check in controller available to program depends on program. 5/63 244:092.800 § CDC 160.A 092. EFFECTIVE SPEED CDC 606 MAGNETIC T'APE UNIT 1,000,000 7 4 -41 2 100,000 7 .,'fI" 4 Effective Speed: Characters per 2 Second ~ 10,000 7 ,.. 4 2 1,000 ,.., / I-' ';I" ~ --- ...HIGH DENSITY ~LOW DENSIh "",.. I"'" V ~ ~ V V 7 4 2 100 2 10 4 7 2 100 4 7 1,000 Characters per Block 5/63 2 4 7 10,000 244: 101.100 CDC 160/160-A Input-Output 161 Typewriter INPUT-OUTPUT: 161 TYPEWRITER § 101. .25 .1 GENERAL • 11 Identity: . . • 12 Description Typewriter. 161. The 161 Typewriter is a modified IBM electric typewriter which is mounted on a stand, separate from the processor. Upper and lower case shift codes are .3 provided, and both cases can be printed. The typewriter is not usable off-line, but can be connected to either the Normal or the Buffer channel of the 160-A. .31 Range of SymboLS Numerals: Letters: . Special: Alternatives: FORTRAN set: Req. COBOL set: Total: . EXTERNAL STORAGE Form of Stora~ .13 .311 Medium: The 161 either types output data or receives input data, performing both operations. under program control. Input provides by-product hard copy. Input is . 312 Phenomenon: terminated by carriage return, manual keying by the .32 Positional Arrangemen~ operator, or upon filling a specified core storage area. Output carriage returns must be programmed. .321 Serial by: .324 Track use Several status conditions of tile typewriter may be Data: sensed (see Paragraph .56). No parity checking is .325 Row use: performed on data transfers, and invalid codes are not detected. .33 Coding: Availabilit~: 4 months. . 14 First .2 PHYSICAL FORM .21 Drive Mechanism Deliver~: . . 211 Drive past the head: . 212 Reservoirs: . . 22 .34 .35 friction drive. none. .223 Common system: · engraved hammers. · typewriter keyboard for manual input. · no. . 231 Maximum number Interleaved carbon: . · depends on stationery . . 233 Types of master Multilith: . . . . . yes. Spirit:. . . . . . yes. . 24 Ph~sical 85 print positions. all for data. as in Data Code Table No.5. Dimensions .351 Overall width: .352 Length: .353 Maximum margins: .4 CONTROLLER . 41 Identity: . .42 Connection to .43 character at 10 per inch. none . 8.5 inches . no limit . no limits . part of 160/160-A Processor . S~stem .421 On-line: . .422 Off-line:. Multiple Copies continuous fanfold stationery . printing. Format Com2atibilit~: SenSing and Recording Systems .221 Recording system: . 222 SenSing system; . 23 1960 . 0-9. 10 52 A - Z (U .C. & L.C.). 26. none. yes. no. 88, plus 6 control codes not used as data. 1. not usable off-line . Connection to Device .431 Devices per controller: .432 Restrictions: 2. none . Arrangement of Heads Use of station: Stacks: Heads/stack: . Method of use: · printing. 1. 1. 1 character at a time. Use of station: Stacks: Heads/stack: . Method of use: keyboard input. 1. 44 keys. 1 character at a time. © 1963 .44 Data Transfer Control .441 Size of load: . . . . 442 Input-output areas: .443 Input-output area access: .444 Input-output area lockout: by Auerbach Carporation and BNA Incorporated under program control; no limit . core storage. each word. yes, in 160. 3/63 244: 101.445 § CDC 160/160-A 101. .624 Effective speeds: . 445 Table control: . 446 Synchronization: no. automatic. .63 .5 PROGRAM F ACILITIES AVAILABLE .51 Blocks .511 Size of block: .512 Block demarcation: . .52 InEut-Ou~ut . address set by instruction. . 524 Skipping: .525 Marking: .52Q Searching: input 1 block into core storage. output 1 block from core storage. step 1 or 2 lines at end of printed line; set by operator. none. none. none. .53 Code Translation: automatic. .54 Format Control: set by program. . 55 Control Operations: . none. .56 Testable Conditions: .522 Output: .523 Stepping: .6 PERFORMANCE .61 Conditions: . 62 SEeeds .621 Nominal or peak speed: 3/63 processor. 100, approx. 100. 100, on Normal channel. O. 01, on Buffer channel. .7 EXTERNAL FACILITIES • 71 Adjustments: . .72 Other Controls .73 typewriter ready. typewriter power off. typewriter not in computer status. input character ready. character being typed. Demands on System Component: . . Msec/char: . . . Percentage 160 Processor: . 160-A Processor: same as load size; see. 441 above. Operations .521 Input: same as peak speeds, less allowance for carriage returns . typical typewriter adjustments. Function Form Comment Places unit under computer control switch includes momentary Clear posi tion . Provides termination signal after input operation switch terminates in 3 ways: after next carriage return. immediately. only as programmed (by storage address) . Loading and Unloading .731 Volumes handled: • . • depends on feed facilities. .8 ERRORS, CHECKS AND ACTION Error none. Parity: Reading: Input area overflow: 10 char/sec for output; manual typing speed for input. Output block size: Invalid code: Exhausted medium: Imperfect medium: Timing conflict: Dispatch of data: Check or Interlock none. none. check on last word address any size possible . none. none. none. interlock attach parity bit. Action ? wait. 244: 102.100 CDC 160/160-A Input-Output 1610-A Control Unit INPUT-OUTPUT: 1610-A CONTROL UNIT § 102. .12 .1 GENERAL • 11 Identity: . . . . . . . . Control Unit. 161O-A. . 12 Description (Contd.) In the output mode it can operate anyone of the following: III Description II The CDC 161O-A Control Unit can connect a group of. mM peripheral units to either the CDC 1604, 1604-A, 160, or 160-A computers. In the case where a 1604 or 1604-A is operating in conjunction with a CDC 160 or 160-A, the CDC 1610-A and its associated units can be switched manually, but not by program, from one computer to the other. o mM 533 Card Read Punch, used as a card reader at 200 cards per minute. © 1963 mM 407 Accounting Machine, used as a line printer at 150 lines per minute. o mM 523 Gang Summary Punch, used as a card punch at 100 cards per minute. The printer, either punch, and either card reader can be physically connected at one time, and each may be separately addressed. The mM 088 and 407 units may be used in their normal off-line manner. No gang or summary punching is available with either the 523 or 533. On-line control of the 088, 407 and 523 by the computer requires modification of the control panels so that each unit is wired in the CALCULATE ON state (the 533 is wired directly and has no provision for control panel modifications). In the input mode the 1610-A can operate either one of the following: o mM 088 High Speed Collator, used as a card reader. Either one or both independent card feeds can each operate at 650 cards per minute; or one feed utilizing a second read station can operate at 650 cards per minute. The latter is the usual mode of operation. mM 533 Card Read Punch, used as a card punch at 100 cards per minute • .13 Availability:...... 2 months. . 14 First Delivery:. . . . . 1961. by Auerbach Corporation and BNA Incorporated 3/63 244: 111. 100 • STANDARD EDP • CDC 160-A REPORTS Simultaneous Operations SIMULTANEOUS OPERATIONS § .3 Ill. .1 SPECIAL UNITS .11 Identity: A: . . . . . . . . • . input or output on Normal Channel (cards, magnetic tape. paper tape). B: • • • • • • • • • • input or output on buffered channel (cards. magnetic tape). C: . print a line. PI: • compute. or compute while doing floating point operations using subroutines and 168. 2 • P2: process fixed point operands in 168-1. 168 Arithmetic Unit, Model 1 (fixed point). 168 Arithmetic Unit, Model 2. 169 Auxilary Memory Unit with its own buffer channel. .12 CLASSES OF OPERATIONS Description The basic 160-A system is capable of simultaneous operations, using the Buffer channel for a data transfer and the processor for either program execution or data transfer on the Normal channel. The Buffer operation must be initiated before the processor can proceed. .4 The 166-2 Buffered Line Printer provides simultaneous printing facilities. The 168-1 and 168-2 Arithmetic Units provide independent computation facilities. Very little free tirrie is available with the 168-1 except during multiply-divide operations. Virtually no time is available for processing when using the 168- 2 Arithmetic Unit, because the. processor is processing exponent values while the Model 168-2 unit is doing arithmetic. A completely independent channel exists for transferring a block of data using the 169 Auxiliary Memory Unit (core storage). RULES (Note that the time required to do one p2 operation is much shorter than input-output times.) Condition I a + b + c + pI + p2 = at most 4. a+ pI =1. = at most 1. b = at most 1. c p2 = at most 1. Condition II •2 CONFIGURATION CONDITIONS I: II: without 169 Auxiliary Memory Unit. with 169 Auxiliary Memory Unit. © 1963 a + b + c + pI + p2 = at most 5. = 1. a+ pI = at most 2. b = at most 1. c = at most 1. p2 by Auerbach Corporation and BNA Incarparated 3/63 244: 121.101 • STANDARD EDP • CDC 160-A REPORTS Instruction list INSTRUCTION LIST INSTRUCTION F E 01 01 12 13 MUT MUH 06 30 31 31 32 32 33 33 ee ee 00 ee 00 ee 00 ee ADN ADD ADM ADI ADC ADF ADS ADB (A) (A) (A) (A) (A) (A) (A) 07 34 35 35 36 36 37 37 ee ee 00 ee 00 ee 00 ee SBN SBD SBM SBI SBC SBF SBS SBB (A) (A) (A) (A) (A) (A) (A) (A) 50 51 51 52 52 53 53 ee 00 ee 00 ee 00 ee XXXX RAD RAM RAI RAC RAF RAS RAB (A) (A) (A) (A) (A) (A) (A) 54 55 55 56 56 57 57 ee 00 ee 00 ee 00 ee YYYY AOD AOM AOI AOC (E) + 1 -.A; then (A) _E. (m) + I_A; then (A) ___ m. «E» +-1 - A; then (A) (E). G + 1 --+ A; then (A)-. G. (P +E) + l--+A; then (A)_ P +E. «0)7777) + 1 _ A; then (A) _ (0)7777 (p - E) + 1 - A; then (A) _ P - E. 02 10 12 12 13 13 ee ee 00 ee 00 ee 00 ee 03 14 15 15 16 16 17 17 ee ee 00 ee 00 ee 00 ee 60 ee 11 11 G OPERATION Mnemonic Opcode yyyy XXXX YYYY XXXX yyyy XXXX AOF AOS AOB yyyy XXXX yyyy XXXX LPN LPD LPM LPI LPC LPF LPS LPB Arithmetic 10 (A) -.A. 100 (A) --+A. (A)+E _A. + (E) --+ A. + (m) --+A. m =YYYY. + «E» -..A. +G --.A. + (p + E) --+ A. P = present contents of instruction counter. + «0)7777)-. A. + (p - E)-.A. - E --.A. (E) --+ A. (m) ___ A. «E» -.A. G --.A. (p + E)---+ A. «O}7777)---+A. (p - E) _A. + (E) --. A; then (A) _ + (m) _ A; then E. (A) --. m. + «E» - A; then (A) - . (E). + G --. A; then (A) ---+ G. + (p + E) _ A; then (A) ---t> P + E. + «0)7777) - . A; then (A) _ (0)7777. + (p - E) - . A; then (A) --+P - E. (X)c, 'LOGICAL (A) "LOGICAL (A) "LOGICAL (A) "LOGICAL (A) "LOGICAL (A) "LOGICAL (A) "LOGICAL (A) "LOGICAL AND" AND" AND" AND" AND" AND" AND" AND" "EXCLUSIVE "EXCLUSIVE "EXCLUSIVE "EXCLUSIVE "EXCLUSIVE "EXCLUSIVE "EXCLUSIVE "EXCLUSIVE SCN SCD SCM SCI SCC SCF SCS SCB (A) (A) (A) (A) (A) (A) (A) (i\) ZJF (P) + E _ © 1963 E ___ A. (E) - . A. (m)_A. «E»--+A. G _A. (P +E) -.A. «0)7777) _ A. (p - E) --+ A. OR" OR" OR" OR" OR" OR" OR" OR" E _ A. (E)-.A. (m) - . A. «E» _A. G _A. (p + E) _ A. «0)7777) _ A. (p - E) --. A. P if (A) = 0000; otherwise continue. by Auerbach Carparatian and DNA Incarparated 3/63 244:121 .. 102 § CDC 160-A INSTRUCTION LIST (Contd.) 121. INSTRUCTION OPERATION Mnemonic Opcode F E 61 62 63 64 65 66 67 ee ee ee ee ee ee ee 70 71 71 ee 00 ee 01 01 PTA (P)---. A. 04 ee ee 00 ee 00 ee 00 ee yyyy LDN LDD LDM LDI XXXX LDC E ....... A. (E)--.A. (m) ....... A. «E» - - A. G-A. (p +E) ___ A. «0)7777) -+A. (p - E) ---+ A. G NZF PJF NJF ZIB NZB PIB NIB yyyy JPI JPR 1FI (p~c (Contd. ) (P) (P) (P) (P) (P) (P) + E __ P if + E ..... P if + E --. P if - E _ P if - E - P if - E ---+ P if - E - P if (A) (A) (A) (A) (A) (A) (A) of 0000; otherwise continue. > 0; otherwise continue. < 0; otherwise continue. = 0000; otherwise continue. of 0000; otherwise continue. > 0; otherwise continue. < 0; otherwise continue. (E)-+P. (P) + 2--. (r)m. M+l ..... P. «P) +E) -Po Data Transfers 20 21 21 22 22 23 23 LDF LDS LDB 05 24 25 25 26 26 27 27 ee ee 00 ee 00 ee 00 40 41 41 42 42 43 43 ee 00 ee 00 ee 00 ee 01 01 01 01 01 01 01 00 05 06 07 30 5e 6e 76 ee HWI 01 01 01 01 01 01 02 03 10 LSI LS2 LS3 LS6 RSI RS2 44 45 45 ee 00 ee 3/63 yyyy XXXX ee yyyy XXXX yyyy yyyy yyyy 11 14 15 yyyy E ....... A. or =l's complement of the operand. ) LCN LCD LCM LCI LCC LCF LCS LCB (E")-+A. (m)---+A. A. G---+A. (P+E) ....... A. «0)7777) ....... A. ""(P'"=E") - A. STD STM STI STC STF STS STB (A)-+E. (A)-+m. (A) __ (E). (A)-+ G. (A)--- P + E. (A)-+ (0)7777. (A)_ P - E. BLS ATE ATX ETA CTA STP STE Set an area of core storage to value present in Accumulator. Transfer contents of Accumulator to Buffer Entrance Register (BER). Transfer contents of Accumulator to Buffer Exit Register (BXR). Transfer contents of BER to Accumulator. Transfer contents of the 4 bank controls to Accumulator. Store contents of Program Counter (P) to location (d)005e. Transfer contents of BER to location (d)006e, and transfer contents of Accumulator to BER. Transfer E portion of contents of Accumulator to E portion of word in indirect bank whose address is at (d)OOee. SRD SRM SRI mm ....... Shifting Circular Circular Circular Circular Circular Circular shift shift shift shift shift shift (A) (A) (A) (A) (A) (A) left 1 bit position. left 2 bit positions. left 3 bit positions. left 6 bit positions. right 1 bit position. right 2 bit positions. (E)-- A; left circular shift 1 position; (A)-.E. (m) --. A; left circular shift 1 position; (A) ....... m. «E» - A; left circular shift 1 position; (A) - (E). INSTRUCTION LIST § 244:121.103 INSTRUCTION LIST (Contd.) 121. INSTRUCTION G OPERATION Mnemonic Opcode F E 47 46 46 47 00 00 ee ee 01 01 72 04 20 00 yyyy 73 72 73 00 ee ee yyyy yyyy yyyy INP OUT 74 76 76 75 ee 00 77 00 XXXX OTN INA OTA EXC 75 ee EXF 00 Oe NOP 00 77 77 77 77 77 00 00 00 00 00 77 Oe eO ee Ie 2e 3e ERR HLT HLT SLS SLJ SJS SRJ SIC IRJ 00 00 4e 5e SDC DRJ 00 00 6e 7e SID ACJ 01 4e SBU Shifting (Contd. ) XXXX SRS SRC SRF SRB yyyy yyyy CBC CIL mI mo --aoYJ777) ---. A; left circular shift 1 position; (A) ~ (0)7777. Operand ~ A; left circular shift 1 position; (A) ~ G. Operand ---. A; left circular shift 1 position; (A) - . P + E. Operand ~ A; left circular shift 1 position; (A) ~ P - E. Input-Output Stop buffer data transfer. Generate "no buffer complete" interrupt. Clear the interrupt lockout. Initiates buffer channel input-output operation. Generate interrupt 20 when buffer operation complete. Go to YYYY if buffer is busy. Buffer output operation. See IBI. Normal channel input operation. Block of data transferred to indirect bank. Normal channel output operation. Block of data transferred from indirect bank. Output one word (OOee) to selected device using normal cnannel. Input 1 word to Accumulator from selected device, using normal channel. Output 1 word from Accumulator to selected device, using normal channel. Transmit External Function (XXXX) to external devices to select and instruct device. Transmit External Function to external device. Function is found ee locations forward of instruction. Miscellaneous Proceed to next instruction. Computer stops; console ERR alarm; use RUN switch to continue. Computer stops; console alarm; use RUN switch to continue. Same as 7700. Stop if e sense switch is set. Jump to YYYY if e jump switch is set. Test e jump switch and then e sense switch. Set relative bank control to e and jump to address present in Accumulator. Set indirect bank control to e. Set indirect and relative bank controls to e and jump to address present in Accumulator. Set direct bank control. Set direct and relative bank controls to e and jump to address present in Accumulator. Set indirect and direct bank controls to e. Set direct, indirect, and relative bank controls to e and jump to address present in Accumulator. . Set buffer bank control to e. © 1963 by Auerbach Corporation and BNA Incorporated 3/63 coo .... .... w CONTROL DATA 0 8 CORPORI\TION PAGE NO. PAPER TAPE CORRECTION ROUTINE !""" 2 ::tJ"U O::tJ cO -1Ci) Z ::tJ ("t"1:t> s:: Z 0 ~ 0 .... ~ ~ d' t; p. g @ 0 .... po ~ '" c: '0 (1) t; po ""< c-" S '0 C n (1) ::r 0 0 t; t; n o -no a g. "c "c.. '"Z > .. • (1) ~ V> "U m n ~ m z ::s 0 t; 0 ~ >V> ....... ffi V> p. V> 0 >- '(' • , Z G) 0 ~ 0 :;- n 0 C ~> ~ >- I • ZJF .3 • • '" onn v>OC ~2:n ....... ::1 0'" 0- w ....... 0W v>v>c >-..... v>1II>• n >-3· III ::I N - ~ """ ~ C C ~ t-.) 0\ c.:> ....... c.:> CONTROL DATA C'l 8 CO!-?F-'OHA IIUN PAGE NO. DATE PROGRAMMER :::0 "tl 0:::0 CO -lG) -:::0 2: ITI » s: ~ N :t ..... ~ N C) C) Z G) ~ ttl ~ e: I"T"I ::0 ~ ::I: I~I ~ G) ITI r"I C r"I ..... 0C) :i> 244:132.100 • STANDARD II REPORTS EDP CDC 160-A Coding Specimen FORTRAN-A CODING SPECIMEN: FORTRAN-A § •1 132. •1 CODING SPECIMEN CODING SPECIMEN (Contd. ) C 100 FORMAT (I4/(F5.1,Fll.8» 101 FORMAT (F12.3/2F12.3/2F12.3/F12.3) 102 FORMAT (3F12.3) DIMENSION X(lO),Z(lO) READIOO, N, (X(I),Z(I), I=l,N) READIOl, TN2, CHIl,CHI2,A,B,ZO XBAR=O ZBAR=O DO 1 I=l,N XBAR=XBAR+X(I)/N 1 ZBAR=ZBAR+Z(I)/N C ESTIMATE REGRESSION COEFFICIENTS AND VARIANCE BETA=O ALPHA=O TEMP =0 DO 2 I=l,N 6 C C 7 BETA=(X(I)-XBAR)'(Z(I)~ZBAR)+BETA 2 TEMP=TEMP+(Z(I)-ZBAR) "2 BETA=BETA/TEMP C ALPHA=Y~AR-BETA'ZBAR 3 .C 4 5 VAR=O DO 3 I=l,N VAR=VAR+(X(I) -ALPHA-BETA' Z(I» "2/N PUNCH 102 , ALPHA, BETA, VAR CONFIDENCE INTERVAL FOR ALPHA TEMP =0 TEMP 1=0 DO 4 I=l,N TEMP=TEMP+Z(I) , '2 TEMPl=TEMPl+(X(I)-ALPHA-BETA'Z(I», '2 TEMP 1=TEMP I' TEMP TEMP=O DO 5 I=l,N TEMP=TEMP+N'(N-2) '(Z(I)-ZBAR) "2 TEMP=SQRTF (TEMP/TEMP 1) TEMP2=(TN2+ALPHA'TEMP)/TEMP TEMPl=(-TN2+ALPHA'TEMP)/TEMP PUNCH102, TEMPI, TEMP2 © 1963 8 CONFIDENCE INTERVAL FOR BETA TEMP 1=0 TEMP2=0 DO 6 I=l,N TEMPl=TEMPl+(X(I)-ALPHA-BETA'Z(I», '2 TEMP2=TEMP2+(N-2) '(Z(I)-ZBAR) "2 TEMP=SQRTF(TEMPl/TEMP2) TEMPl=(-TN2+BETA'TEMP)/TEMP TEMP2=(TN2+BETA'TEMP)/TEMP PUNCHI02, TEMPl,TEMP2 CONFIDENCE INTERVAL FOR VAR TEMP 1= (N 'VAR) /CHI2 TEMP2=(N'VAR)/CHIl PUNCHI02,TEMPl,TEMP2 TEMP ",0 COMPUTE F FOR ALPHA=A AND BETA=B DO 7 I=l,N TEMP=TEMP+(Z(I) "2) '(BETA-B) TEMPl=(N'(ALPHA-A)+2'N'ZBAR'(ALPHA-A), l(BETA-B)+TEMP)/(N'VAR) PUNCH 102 , TEMPI PREDICTION INTERVAL FOR X CORRESPONDING TO Z TEMP=O DO 8 I=l,N TEMP=TEMP+(Z(I)-ZBAR)' '2 TEMP=TN2 'VAR' SQRTF «N / (N-2» , «N+l) /N 1+(ZO-ZBAR)"2/TEMP» TEMPl=ALPHA+BETA'ZO-TEMP TEMP2=ALPHA+BETA'ZO+TEMP PUNCHI02, TEMPI, TEMP2 STOP 7707 END END by Auerbach Corporation and BNA Incorporated 3/63 244: 132.200 § CDC 160-A 132. •2 CODING SHEET 160 FORTRAN CODING FORM PROGRAM ROUTINE ~ STATE- ~f- _ _ _ _ _ _ _ _ _ _ _....:F.:.OR::.:T::.:RA::.:N,---=-,ST::.:AT:..:E.:.":::EN:..:.T_ _ _ _ _ _ _ _ _ _ _ _-j SERIAL. ~ MENT ~. NO. •••• 3/63 NUMBER • • ALPHA 0 I NAME PAGE DATE • • • • ,0 ~"'I I I " I ' " 11.1 .. " ....................... 00 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... 244:134.100 .STAHDAR~ EDP • CDC 160-A REIORTS Coding Specimen INTERFOR CODING SPECIMEN: INTERFOR § 134 . .1 CODING SPECIMEN - INTERFOR A. IDENTIFICATION TITLE: B. INTERFOR Subroutine - Sine Cosine PURPOSE Given X, compute the Sin X or Cos X (where X is in radians) This isa relocatable program on Flexowriter tape with entry address of Sin X at 0000/ and Cos X at 0045/. Basic entry address is at 0033/. Accuracy is within 1 or 2 in the ninth decimal place. smx cosx INTERFOR-2 0000 15001177 entrance to sin x subroutine 32000032/ 200000]6/ 300~0]5/ 20000011/ 50000000 ]20000]4/ 15400033/ 320000]6/ 1500005] / entrance to basic to ~uate series go to check 11m!t of one 004000]1/ 00000025/ 00410000 00000000 17752421 31403333 1500 1m 5100004]/ exit to basic language 20564061 0404 4056 2016 4220 20144214 0400 4014 4015 4016 2200 4011 4012 1001 3200 1m 5000 0000 LOOP 3060 1177 TABlE 51000033/ exit to basic language © 1963 by Auerbach Corporation and BNA Incorporated 4/63 244:134;200 CDC 160·A § 134 • •1 CODING SPECIMEN· INTERFOR (Conn!.) I 20560701 40566205 2061 4056 2341 7051 2202 7057 0040/0000 75007777 30000050/ cos x entrance 75400 000/ 00000000 I 1300 0022/ 7500 0000/ JII J; .2 CODING SPECIMEN - INTERFOR FLAP SYMBOliC INPUT The following example demonstrates how a sequence of instructions in a symbolic program appears on the listable output. The coding represents a routine that uses programmable input!output subroutines. EXAMPLE: Symbolic Input Loc QJ.l 2000 ORG START EN! 1 0 LOAD SLJ 4 1224 STA 1 BLOCK ISK 1 9D SLJ 0 LOAD SLS 0 OUT BLOCK EQU OUT ENI 1 0 DUMP LDA 1 BLOCK SLJ 4 1236 ISK 1 4D 3000 SLJ 0 DUMP SLS 0 START END 4/63 M B START 244:135.100 CDC 160-A Coding Specimen SICOM CODING SPECIMEN: SICOM § 135 . .1 CODING SPECIMEN Develop a subroutine to obtain Y with a given X where Y= X+A, X2 - B A=3.1416, B=8.765, and X is stored in location 0050 within the main program. MAIN PROGRAM SUBROUTINE LOC CODE NOTES LOC CODE NOTES 0000 0220050 Load X 0200 0000008 Set Non-Trace 0001 0700200 Jump to SR at 0200 0201 0000006 Set Relative Mode 0002 040YOOO Print Y 0202 0300010 Add X + A 0203 0770013 Store X + A 0204 0310008 Subtract X - A (to restore X) 0205 025YOOO Multiply X· X = X2 0206 0310008 Subtract X2 - B 0207 0230009 Inverse Divide, Y = X + A X2 - B (Y in A. R.) 0208 0000007 Set Absolute Mode 0209 0000009 Reset Trace 0210 0000070 Return to 0002 0212 = 3.1416 0214=8.765 0216 = Storage of X + A © 1963 by Auerbach Carporation and BNA Incorporated 4/63 244: 136.100 CDC 160.A Coding 'Speclmen AUTOCOMM CODING SPECIMEN: AUTOCOMM § •1 136 • CODING SPECIMEN - - - _ •.. ~ = ALPHA 0 IAlI 0 = ZERO - =MINUS .. __ __. . =HYPHEN CODING FORM I PAGENO.~ J I I I O A TPROGRAM E PROGRAMMER V/////- NAME It:>~ 1 LEVEL LENGTH ~RINT I I DESIGNATOR ::iIAIt.Mt.1 COMMENTS I I IJIITPIIT ROCRO STmRE ,I F ERRmR Gm TA smp I IF FNn ~ARn r.1J Tm FIJ.I tim Tm NFXT IFa. ~EAO MASTER &Tmp6 WRITE IlIITNST ,STIJP7 EaF FaT r.d Till ... ~ liCK NASTFR lEaF MARK aUTMST ~ OI~K dllTNST IEaT J0a IHLT ,END IilF ISTmPI IHLT ,CARn RFAn .AA!JA ISTIIlP2 IHIT ,RFAn ... ST.A .AMA ISTdP~ 1,,1 T ,WOtJINr. ISTIiIP4 IHLT ,WR I TE ERRIJR IlIITNST IC!Jpv\ ISTdP5 IHLT ,AR I TH ERRIIR 7RIlAnn ISTap6 ,HLT ,RFAn FRAIlIR 1.1 NAL CIIlPvl ISTIlIP7 IHLT I DATA isTIlRE 'I IsERVI 102 «nil. NCO ,WRITE ERRIoIR (FINAL CdPvl II ,CARn • 110 I. F!JA IIPnn. .eIJIIIMNS I-R 102 liNK 102 .eIlIIIMNS 11-16 In? I:;RADI 102 .cIlLUMNS 21-22 102 II = ALPHA 0 0 =ZERO - © =MINUS .. =HYPHEN 1963 by Auerbach Corporation and BNA Incorporated 4/63 244:136.101 CDC 160-A l36 . § .1 CODING SPECIMEN (Contd.) IAl I u\.uNlM NAME IPA'!'l19lJ! CODING FORM IIl1r I PAGE NO. --L-. PROGRAM PROGRAMMER V///.-0 ' " :IYle LENGTH LEVEL 11 102 DESIGNATOR P2 COMMENTS 11 ,CGlLUMNS 3 I - 3 6 02 ,CIllLUMNS 41-46 MaSI 02 MASTER FI lOO NAME 102 30 1ST H 10 'IRST kJ~ ,lQ MI DOLE kl3 '10 INK 02 SERVN0 )2 PREF IX 03 BIllDY n IIFFIX 02 PAYC00E 02 GRADE 03 IDFN RDFN )2 ISERV2 ~o r.HAR IJIllB COIDE ..P? MASTER I~oo ItlllTMST ES ," l3 M0NPAY F ILE RECARD-~ F ,SERV 1CE NUMBER " MillS .D - W 0'> () AUTOCOMM CODING FORM CONTROL DATA :.JI~":.I[.lI~'~"'.Ir.· 18 PAGE NO. DATE PROGRAM Z 0 PROGRAMMER ~ PROCEDURE STATEMENT NAME LENGTH LEVEL 81 110 131 DESIGNATOR tIl COMMENTS 721 115 ~ n 0 0 Z " V> "tI m n i' m ..z >c::: a n 0 ~ ~ © ~ W c: "ag :J" n o -0o o·~ :J Q :J a. co Z > if o -0o a it a. !3 = FORM 383 ALPHA 0 0= ZERO - = MINUS ,,= HYPHEN tV "'~" ~ -tt 0'> W ~ o ;.... o 244:141.100 CDC 16G/160·A Data Code Table Card Code DATA CODE TABLE NO.1 § 141. •1 USE OF CODE: • • • card input- output. .2 STRUCTURE OF CODE • 21 Character Size:. • • • 1 column per character . • 23 Character Codes OVERPUNCH UNDERPUNCH None None BLANK 12 11 + I(MINUS)I 0 12 11 0 0 1 1 A J 1 2 2 B K S 3 3 C L T 4 4 D M U 5 5 E N V 6 6 F 0 W 7 7 G P X 8 8 H Q y 9 9 I R Z $ . * ( 8-2 8-3 8-4 = - (DASH) ) 8-5 8-6 8-7 © 1963 by Auerbach Corporation ond BNA Incorporated 3/63 244: 142.1 00 _STANDARD _EDP ." CDC 160/160-A Data Code Table Printer Code REPCRTS DATA CODE TABLE NO.2 § 142. .22 •. .221 More significant pattern: .222 Less significant pattern: .1 USE OF CODE: printer. .2 STRUCTURE OF CODE .21 Character Size: • . • 2 octal digits (6 bits) per character. LESS SIGNIFICANT PATTERN Notes: Character Structure .23 1 octal digit (0 to 7). 1 octal digit (0 to 7). Character Codes MORE SIGNIFICANT PATTERN 0 1 0 : 8 1 1 2 2 2 3 4 5 6 7 BLANK Y - Q + H 9 I z J A I 0 S ] K < R NOTE 2 B C 3 3 = T , L NOTE 3 4 4 ~ U ( M * D ) 5 5 -< V --+ N t E ~ 6 6 I W - 0 ~ F ? 7 7 G ; [ X NOTE 1 P > 1 A or .... 2v or% 3l or $ © 1963 by Auerbach Corporation and BNA Incorporated 3/63 244: 143.1 00 .51""'0 II EDP CDC 160l160-A REroRTS Data Cade Table BCD DATA CODE TABLE NO.3 § 143. .22 .221 More significant pattern: .222 Less significant pattern: BCD representation. .1 USE OF CODE: .2 STRUcrURE OF CODE • 21 Character Size: • 2 octal digits (6 bits) per character. LESS SIGNIFICANT PATTERN .23 1 octal digit (0 to 7). 1 octal digit (0 to 7). Character Codes MORE SIGNIFICANT PATTERN 0 0 1 Character Structure 1 2 2 3 3 1 2 3 4 5 6 7 8 BLANK Y (MINUS) Q + H 9 / z J R A I B + K - 0 S = T , L $ C U ( M * D - (MINUS) 4 4 5 5 V N E 6 6 W 0 F 7 7 X P G (DASH) © 1963 by Auerbach Corporation and BNA Incorporated ) 3/63 244:144.100 • STANDARD EDP • REPORTS CDC 160/160-A Data Code Table Binary DATA CODE TABLE NO .. 4 LESS SIGNIFICANT PATTERN MORE SIGNIFICANT PATTERN 2 3 4 5 0 1 0 0 8 + H (MINUS) Q 1 1 9 A I J R 2 :2 3 3 = (DASH) - 6 BLANK / Y z B K C L $ T ., M * U ( D ) S 4 4 5 5 E N V 6 6 F 0 W 7 7 G P X © 1963 7 by Auerbach Corporation and BNA Incarparated 3/63 244:145.100 CDC 160/160·A Doto Code TobIe Typewriter Code DATA CODE TABLE NO.5 § 145. Character Structure .22 .221 More significant pattern: .222 Less significant pattern: Typewriter input- output. •1 USE OF CODE: .2 STRUcrURE OF CODE . 21 Character Size: • 2 octal digits (6 bits) per character. LESS SIGNIFICANT PATTERN 1 octal digit (0 to 7). Character Codes MORE SIGNIFICANT PATTERN 2 1 0 0 e 4 3 E a A ., z Z w W TAB r R d D j J - a g G b B 8 ! SPACE i I s S u u 2 = 3 0 T 5 h H P P Y y q Q 6 n N c C f F k K 7 m M v V x X 9 ( / ? & 2 @ $ 6 ¢ 3 # 1 * BS 4 " I 7 7 : ; L t 6 5 1 1 4 .23 1 octal digit (0 to 7). CR + 0 UC ) 0 5 % LC Note: Both upper and lower case symbols shown in each box. © 1963 by Auerbach Corporation and BNA Incorporated 3/63 244: 146.100 CDC 160/160-A Data Code Table Collating Sequence DATA CODE tABLE NO.6 § 146. .1 USE OF CODE: .2 STRUCTURE OF CODE printer collating sequence . In ascending sequence Blank: 1 2 3 4 5 6 7 8 9 0 t= ~ [ + 1 J A S T U V W X y Z K L M N 0 P B C ] - ..... or ". Q R %orV $ or 7 * t + > D E F G H I < ~ ? © 1963 by Auerbach Corporation and BNA Incorporated 3/63 244: 151.100 • III STANDARD EDP CDC 160-A REPORTS P. O. Facilities PROBLEM ORIENTED FACILITIES § 151. .1 UTILITY ROUTINES .11 Simulators of Other Computers The 160-A INTERFOR assembler and interpreter subroutines permit the use of floating point instructions for the CDC 1604/1604-A computers (see Sections 244:173 and 244:184). The National Cash Register NCR 310 computer, made by Control Data Corporation, is a CDC 160 with some instructions omitted. No known efforts are being made by 160 users to simulate the 310. .151 General (Contd.) peripheral equipment found on the 160/160-A systems and the newer 167 Card Reader and 166-1 Printer. The older eqUipment referred to is the 1610 Controller for IBM card equipment, the 1612 line printer, the 163, 164, and 1607 magnetic tape systems, and the 1609 card read and punch unit. No routines exist specifically for the new 162 magnetiC tape system using 603 or 606 tape units or the new buffered line printer, Model 166-2. However, the 603 tape unit set at low density can operate correctly in place of a 163 tape unit. Card-to-tape transcriptions proceed at reading speeds of 650 cards per minute using the 161O-A controller and the IBM 088 Collator, or at 250 cards per minute using the 167 Card Reader. The CDC 160 can be simulated in most cases. Times are the same as on the 160. Halt codes must be checked for proper format, and all bank controls are set to zero before running. .152 SIMO Reference: SWAP listing, program .12 Simulation by Other AD2.02. Computers: . . . . . none. Date available: presently available. Description .13 Data Sorting and Merging This program permits two concurrent data transcriptions: card-to-tape and tape-to-printer. Sort 3X The printer is the 1612 Printer, the tape units Reference: SWAP listing, program are the older Model 163 tape units which run at H2.0!' 30 KC, and the card reader is the IBM 088 1 item; variilble length, up Record size: Collator and 161O-A controller. The 160-A to 984 char including which is required contains basic storage key. (8,192 words). Block size:. 1 record. Key size:-. 1 to 10 variable length An independent card-to-tape operation proceeds fields. at 250 cards per minute (reader speed). An File size: . 1 tape reel. Number of independent print operation proceeds at 1,000 characters depends on lines per minute (maximum 48-character-set record size; for example, speed). If both operations proceed concurrently, 125,000 80-char records a 5 to 10 per cent loss in peak speeds results on at 556 char/inch, and each program. 56, 500 80-char records at 200 char/inch. Card data can be Hollerith or column binary. Number of tapes: 4, using #162, 163, or 164 Output records on tape consist of 80 BCD tape systems. characters or 160 six-bit binary images, plus Date available:. . November, 1962. optional control characters. The optional Description characters are used to store information about Sort.3X sorts one reel of tape using a two-way the type of card image of the present record and merge technique, with internal sorting performed the next record on tape. In any case, binary on blocked records. Intermediate tape records cards may be intermixed with BCD cards. are blocked in 1,000 character blocks. Time to sort 20,000 SO-character records, with a 16.153 Peripheral ProceSSing Package (PPP) character key, on a 30 KC tape, is 89 minutes Reference: . . . . . SWAP listing, program (manufacturer's example). The program was AD2.0I, and CDC Manual, written for the 160, and makes no use of buffering Publication 517, July in the 160-A. 1962. Date available: . . . . presently available . . . none. . 14 Report Writing: . Description The Peripheral Processing Package contains all .15 Data Transcription input and output subroutines, which are in the .151 General 160-A at one time. A control subroutine can use anyone of these as specified by the setting of A number of data transcription routines are presently available which use both the older jump control switches on the console. © 1963 by Auerbach Corporatian and BNA Incorporated 6/63 CDC 160-A 244: 151.153 § 151. .172 Floating point functions Function .153 Peripheral Processing Package (PPP) (Contd.) Description (Contd.) When one transcription is complete (for example, card-to-tape), the operator resets jump control switches and the next transcription specified starts immediately. Usable units are the older 163 and 1607 magnetic tape systems (30 KC tapes), the fast 1612 Printer (1,000 lines per minute with 48-character set), and the 161O-A adapter for the IBM 088 Collator and 523 card punch (reads 650 cards per minute; punches 100 cards per minute). The manufacturer has demonstrated a newer version of a peripheral processing package; see next paragraPh. .154 Peripheral Processing Package (PPPP) Reference: . . . . • publication BR -9. Date available: routine demonstrated in October, 1962. Description One to four tape-to-printer operations occur concurrently, each at 1,000 lines per minute (48-character printer set), as well as a single card-to-tape operatiou. (using the 250-card-perminute Model 167-2 reader, and Model 603 tape units). With auxiliary core storage, it is possible to perform two card-to-tape or tape-tocard operations and up to eight printing operations. . 16 File Maintenance Arc sin: Arc cosine: Exponential (2 exp x, 10 exp x, e exp x): Squa re root: Log to base 2: Trig onometric series expansions: Time" sec Subroutine 168-2 200,000 floating point option 200,000 ? ? loo.oon .173 Radix conversion Binary to 4- bit decimal: • • . Decimal to binary: General Binary-toBCD and BCD to Binary Conversion: . 174 Binary arithmetic Single precision divide: Paper Tape Edit program A2.01A in SWAP listing. Date available: presently available. Description:. . permits replacements, insertions, and deletions of source statements prepared for the OSAS machine oriented language translator, or for FLAP, an input to the INTERFOR interpreter. OSAS-A Master Paper Tape Edit Reference: Reference: . • Date available: Description:. . .17 Other . 171 Floating point arithmetic: . 6/63 program AA2.02 in SWAP listing. presently available. permits additions or deletions to I/O subroutines of OASA -A Master Paper Tape. Also permits duplicating the tape. Integer divide: ? 3,200 ? ? Storage, words Subroutine 168-2 60 floating point option 60 ? 29 21 478 98 4,300 ILsec per decimal digit. approximately 230 + 198N /Jsec, where N =no, decimal digits to be converted. Result is double precision (2 words); 6.6 decimal digit precision. SWAP program listing AH1. 04. Accepts FORTRANlike statements and performs internal conversions. Numeric conversions are in decimal or octal and operate on 1 computer word. The A, X, and H statements are provided. Program requires 1,075 locations • 23-bit fraction + 11-bit fraction, giving rounded 11- bit fraction. Time is 2,000 jJ.sec. 23-bit integer + 11-bit integer, giving 12-bit quotient with 11-bit remainder. Time is 2,000 /Jsec. Multiple preCision package: • • . . Double precision arithmetic: Single precision fractional square root: • . . . . N-binary-word preCision subroutine. Add, subtract, mUltiply, divide, and shifting provided. No timing given. Storage required is 720 + 1. 5N words, where N = no. of words of precision. 2-word binary add, subtract, multiply, divide provided. Times are found in Central Processor (244:051. 411). timing is 2, 250 jJ. sec per iteration; max time is 25,000 ILsec. see Central Processor , Section 244:051. 412 for floating point times. 9-bit quick mUltiply: . product of 2 words formed as 1 word, accurate to 10 bits. Time is 595 to 660 p.sec. 244:151.174 PROBL_EM ORIENTED FACILITIES § 151. . 176 Decimal Computations Programming System (BCK) (Contd. ) Description (Contd.) core storage. The operations possible using BCK are: .174 Binary arithmetic (Contd.) 9-bit quick sine: . . . obtains sine of an angle which is less than 90 degrees. Accurate to 9 ADD MOVE BCDBCK bits. Time is SUB GOTO(unconditional (BCD to BCK approximately 3, 000 /.L sec. transfer) conversion) .175 Matrix inversion: . . . P:t:ogram II.06; written in RECODE BCKBCD MPY 160 FORTRAN-A. Finds (translate by table (BCK TO BCD DIVIDE inverse of square matrix COMPAR look-up) conversion) in 160 or 160-A. Size of SWAP program listing .177 Equation Solver: subroutines is 487 words, AJI. 01. Program will and it inverts up to a solve 30 linear equations 17 x 17 matrix in the 160, with 30 unknowns. and a 33 x 33 matrix in the Derived matrix can be 160-A (8,192 word store). output. See graph in System • . . . . . • plot routines using the 165 Performance (244:201.32). .178 Other: plotter . • 176 Decimal Computations Programming System (BCK) Linear Program I. Description 7 statistical programs. The BCK program package, B2. 00, provides a 8 Civil Engineering design control routine and a number of arithmetic and programs. logical subroutines for handling decimal numbers. Prime Factor Extractor. Numbers up to 12 decimal digits can be processed; NIM. and the subroutines are called by alphabetic mnemonics. The OSAS assembler and the BCK .2 PROBLEM ORIENTED subroutine are used to execute the source proLANGUAGES: • . . . none. gram interpretively. BCK occupies 550 words of © 1963 by Auerbach Corporation and BNA Incorporated 3/63 244:161.100 • STANDARD _EDP R~ ." CDC 160-A Process Oriented Language 160 FORTRAN-A PROCESS ORIENTED LANGUAGE: 160 FORTRAN-A § . 14 161. .1 GENERAL .11 Identity: CDC 160 FORTRAN-A. . 12 Origin: • Control Data Corporation. .13 Reference: . OPERATING PROCEDURES for 160 FORTRAN-A, Publication PSB-BFOl (Revised), Sept., 1962. 160 FORTRAN/REFERENCE MANUAL, Publication 503, April, 1962. .14 Description 160 FORTRAN-A is a slightly revised version of the CDC 160 FORTRAN language and is provided as an interim language for the 160-A computer until 160-A FORTRAN is released. Section 244:162 describes the 160-A FORTRAN language; Section 242:161 describes the 160 FORTRAN language; and Section 242:182 describes the 160 FORTRAN translator. Refer to Section 242:182 for the translator applicable to 160 FORTRAN-A. Only the main features of 160 FORTRAN-A and the differences between it and 160 FORTRAN are described in this section. 160 FORTRAN-A uses the same language as 160 FORTRAN. Both are versions of IDM 70917090 FORTRAN II, described in Section 408:161. How- © 1963 Description (Contd. ) ever, the source program for the 160-A may be placed on punched cards, instead of only on punched tape as required in 160 FORTRAN. The compiler and the interpreter are read from punched tapes as before. Two additional compiler error checks are provided, one for duplicate label and one for statement out of order. See Section 242:182 for a description of the 160 FORTRAN Translator. Subroutines are brought in using CALL statements, and names are formed using the same rules as in IDM 7090 FORTRAN. Constants and inte~r variables have a maximum size of only 2,04'1. and are represented as 1 computer word. Floatitig point variables are represented by three computer words and f8;l1 within the range of ± 1031 . Boolean operations are permitted, and mixed mode arithmetic (floating and fixed point in the same statement) is provided as an extension to mM FORTRAN. The larger storage of the 160-A (8,192 words compared to the basic 4,096 word storage of the 160 computer) permits longer source programs to be used. A larger matrix can be held in the 160-A. The maxi"mum size matrix which can be inverted by the Il. 06 ~trix Inver.sion program in the SWAP user's listing "1S 33 by 33; m the 160 computer the maximum size is F by 17. Inversion time for a 30 by 30 matrix is estimated to be 20 minutes. Refer to the 160 FORTRAN Translator section (242:182) for a description of translation. by Auerbach Corporation and BNA Incorporated 5/63 244: 162.100 CDC 160-A Process Oriented Language 160-A FORTRAN PROCESS ORIENTED LANGUAGE: 160-A FORTRAN § . 14 162• Description (Contd. ) •1 GENERAL .11 Identity: 160-A FORTRAN. . 12 Origin:. Control Data Corporation. b. All 709/7090 FORTRAN statements are permitted except READ DRUM and WRITE DRUM. The 160 INPUT and OUTPUT statements are no longer used . .13 Reference:. 160-A FORTRAN/GENERAL INFORMATION MANUAL, Publication 505, no date. c. Fixed point constants and variables can be as large as 4,194,303 (two computer words), and statement numbers can be as large as 99,999. 160-A FORTRAN/ REFERENCE MANUAL, PUblication 513, March, 1963. . 14 Description CDC 160-A FORTRAN is a more complete version of the IBM 709/7090 FORTRAN II language than CDC 160 FORTRAN. The 160-A FORTRAN language was announced late in 1962, and is not yet fully implemented and documented (March, 1963). The references listed in Paragraph .13 contain a description of the language and the translator. Section 244:162 describes the 160-A FORTRAN language; Section 242:161 describes the 160 FORTRAN language; and Section 242:182 describes the 160 FORTRAN translator. Only the main features of 160-A FORTRAN and the differences between it and 160 FORTRAN are described in this section. Changes tQ 160 FORTRAN are listed listed below: a. The COMMON statement is permitted, and is used to link variables in subroutines and main programs. Programs and subprograms which are to be run together must be compiled together. © 1963 Subroutines are brought in using CALL statements, and names are formed using the same rules as in IBM FORTRAN. The number of subroutines is restricted only by available core storage. Floating point variables are represented by three computer words and fall within the range of ±1031 . Boolean operations are permitted, and mixed mode arithmetic (both fixed and floating point operands in one expression) is provided as an extension to IBM 7090 FORTRAN. For other details of the 160-A FORTRAN, refer to the 160 FORTRAN description referenced above. With respect to IBM 709/7090 FORTRAN II, FUNCTION and FREQUENCY statements are not permitted. Complex arithmetic, an addition to the 7090 FORTRAN, is not permitted in 160-A FORTRAN. Object programs are executed interpretively, as before, and compile-and-run operation is possible with 160':'A FORTRAN. by Auerbach Corporation and BNA Incorporated 5/63 244: 163.100 • STANDARD EDP _ RE/'IlRTS ~ - CDC 160·A Process Oriented Language AUTOCOMM PROCESS ORI ENTED LANGUAGE: AUTOCOMM § 163. .14 .1 GENERAL .11 Identity: AUTOCOMM. . 12 Origin:. Control Data Corp., Minneapolis, Minn. .13 Reference:..... AUTOCOMM&ENERAL INFORMATION, CDC Publication No. 524, November, 1962. AUTOC OMM/RE FERENCE MANUAL, CDC Publication No. 519, March, 1963. . 14 Description recorded With only one character per word. A redefine pseudo operation, RDFN, permits the assignment of more than one file to the same storage area . The Procedure Section contains the AUTOCOMM procedural statements and any OSAS-A symbolic coding that may be required. Each statement may be named and can specify only one AUTOCOMM operation, along with its associated error and conditional clauses, if any. Most AUTOCOMM statements result in the generation of a return jump to a subroutine in the object program, but others result in the in -line generation of a block of machine coding • All AUTOCOMM arithmetic statements have the following general form, which is quite similar to that of COBOL: AUTOCOMM is a pseudo English language programming system desIgned for c~1l1merclal data processing problems. This language can utilize any of the standard 160-A input-output devices, and its operation repertoire includes decimal arithmetic, multiword transfers, alphabetic and numeric comparisons, format conversions, and editing. Seven pseudo index registers can be set, incremented, and tested by procedural statements. ADD data-name-l TO data-name-2, IF ERROR GO TO procedure-name. Operands may be up to 12 digits long; literals may not be specified as operands; and the original value of "data-name-2" is always replaced by the result of the operation. The AUTOCOMM system consists of a source language translator and a library of macro subroutines that are called by the source language statements. AUTOCOMM source programs are translated into OSAS-A (the 160-A assembly language) and then into machine language object programs. OSAS-A symbolic statements can be used in the Procedure Section of AUTOCOMM programs. The library of macro subroutines is stored on magnetic tape in OSAS-A language. Additional subroutines can easily be added by the user. The EDIT verb can be used to suppress leading zeros or to insert dollar signs, asterisks, commas, periods, and slashes into numeric data to be listed. The transmitting field contains the all-numeric data item. The receiving field contains a COBOL-like "picture" (specified as an alphameric constant in the Data Section) that indicates the desired output format. The picture is destroyed by the EDIT operation (i. e . , it is replaced by the edited numeric item). The COMPARE verb transfers control to one of three procedural statements, depending upon ~e result of a comparison of two alphameric items. TEST determines whether a specified numeric field is negative, zero, or positive, and transfers c;ontrol accordingly. AUTOCOMM includes a complete set of input-output statements, but nQ provision ·has been made for the blOCking and unblocking of records on magnetic tape files. Every AUTOCOMM program is divided into a Data Section and a Procedure Section. The Data Section describes the files and items to be processed. Up to nine levels of data items are permitted. Each data statement specifies the name of an item or file, its level number, and its size in characters. For numeric items, the decimal point location can also be specified. Names cannot be more than six characters in length. Special data statements can be used to define alphameric constants of up to 42 characters, signed numeric constants of up to 12 digits, and working storage areas. Internal data representation is in standard six· bit BCD code, with two characters per 160-A word. Special provisions allow the processing of files © 1963 Description (Contd) AUTOCOMM should be useful for the same type of commercial hatched-processing applications as COBOL, should be somewhat easier than COBOL to learn and use, but is considerably more limited than COBOL in the facilities it offers. .15 Translator Availability: 1 by Auerbach Corporation and BNA Incorporated 4/63 244: 171. 100 • II STANDARD EDP REPORTS CDC 160/160-A M. O. Language OSAS/OSAS-A MACHINE ORIENTED LANGUAGE: OSAS/OSAS-A § 171. .2 LANGUAGE FORMAT .21 .1 GENERAL . 11 Identity: . . . .12 Origin: • 13 Reference OSAS: • OSAS-A: • 14 . 160 Assembly System • OSAS. . Legend Location: 160-A Assembly System. OSAS -A. Operation Code: Control Data Corporation. Address: Additive: Comments: CDC Publication 501. CDC Publication 507 A. Description OSAS and OSAS-A provide simple, straightforward assembly systems for the 160 and 160-A Computers. The system accepts mnemonic or numeric operation codes for all the computer operation codes, and several pseudo operation codes. Synonyms can be defined, but no macro instructions are provided. Both the 160 and 160-A systems provide relocatable binary output as object programs. Both systems will accept library routines for assembly with the object program. These routines must follow the source program during assembly. .15 .22 see coding diagram in Section :131. name for statement location. operation code or pseudooperation code. operand address or data for pseudo-operation • increment or decrement for address • comments by programmer; also constants. convention or require. . . . noments. .23 Corrections: .24 Special Conventions .• 242 Multi -addresses: ".243 Literals: address + contents of additive field. none. permissible for address and additive fields; followed byD. .244 Special coded addresses: none • .241 Compound addresses: . Under operator control, a given symbol table can be entered into the system to link: individually assembled LABELS programs or segments of programs. Symbols con.3 sist of one to six alphameric characters. The OSAS .31 General symbol table has a maximum usable symbol table size of approximately 250 symbols, and can be con.311 Maximum number of labels siderably smaller depending on the media selected Procedures for input, intermediate and final output, and the list OSAS: • • • • • • 340 or fewer, depending on output. length of I/O subroutines specified for use by The OSAS -A system has a symbol table size of assembler. approximately 1,000 symbols in the basic 160-A OSAS-A: 1,000 - 2C, where C = no. system using 8, 192 words of core storage. To use of constants labeled. more storage of the 160-A system, the assembler Constants must be modified. OSAS: included with labels for procedures. Pseudo operations provide for control of two separate OSAS-A: 1,000-P, where P =no. of allocation counters; one for lower core (locations procedures labeled. 00 to 77 octal) and the other for the remainder of Files: • • • same as Procedures. core storage. Constants and alphamerics may be Record: same as Procedures. entered as data in the comments field of a statement Items: . • same as Procedures. under pseudo operation control. From 32 to 50 .312 Common label formation characters are allowable depending on the input yes. rule: •••.• medium used. .313 Reserved labels: . none • • 314 Other restrictions: none • . 315 DeSignators Publication Date Decimal address: decimal number followed by D. March, 1962. OSAS: yes; EQU pseudo • • 316 Synonyms permitted: OSAS-A: Revised November, 1962. © 1963 by Auerbach Corporation and BNA Incorporated 3/63 244: 171.320 § CDC 16011.60-A .54 171. .32 .541 Method of control Allocation countel!: Label adjustment: Annotation: • • • .542 Allocation counter Set to absolute: Set to label: •• Step forward: • Step backward: Reserve area:. • .543 Label adjustment Set labels equal: Set absolute value: Clear label table: .544 Annotation Comment phrase: Universal Labels • 321 Labels for procedures Existence: Formation rule First character: Last character: Others: Number of characters: . 322 Labels for library routines: .323 Labels for constants: • 326 Labels for variables: • 33 Local Labels: ··. ·. · ··· .4 DATA .41 Constants optional. alphameric. alphameric • alphameric. 6 max. same as Procedures. same as Procedures. same as Procedures. none. Title phrase: • • .6 · ··· .421 Data layout: .422 Data type: .423 Redefinition: · specified in program. not required. none. · .5 PROCEDURES •51 Direct Operation Codes .511 Mnemonic Existence: Number OSAS: alAS-A: Example: • Comment: .512 Absolute Existence: Number OSAS: alAS-A: Example: • Comment: MACRO AND PSEUDO TABLES .81 Macros: • • • • • • • none • .82 Pseudos Code PRG: CON: optional. END: 97. 134. ADM. add memory. EQU: REM: optional. BNKX (160-A only): 97. SUPA: SUPB: 134. 3100. add memory. Interludes: none. 3/63 .8 BSS: WAI: .53 BCD: , r-I see Sections :151, Problem Oriented Facilities, and :191, Operating Environment. Identity: BLR: none. 32 char (card input) • 50 char (tape input). no special title phrase • .71 specified in program. not required. none. Macro-Codes: EQUpseudo. EQU pseudo • not possible. LIBRARY FACILITIES ORG: .52 ORG, PRG, CON pseudos. EQU pseudo. BLR, BSS pseudos. none. none • .7 Input-Output Areas .431 Data layout: .432 Data type: .433 Copy layout: pseudo-ops • pseudo-ops. see paragraph. 544. SPECIAL ROUTINES AVAILABLE: ••• .411 Maximum size .cons~s Machine form External form Integer Decimal: none. Octal: 4 octal digits. Binary: 4 octal digits. BCD: alphameric. Fixed numeric: none. Floating numeric: none. Alphabetic: none. Alphameric: • none • •412 Maximum size literals: literals are used only in addresses. . 42 Working Areas .43 Translator Control A-U-ER-BA-CH-;~ no on -line library accessible; subroutines may be added for assembly following source statements. Description sets location counter at beginning of assembly. sets location counter during assembly • sets location for lower core storage during assembly. advances location counter, by a maximum of 64 (decimal) locations • same as BLR. stop assembly until operator re-start. terminates input on first pass; can specify program branch location. sets symbol equal to specified value. permits statement of only remarks. specifies a particular core storage bank to loader. suppress listable output. suppress binary output. (normal assembly output). causes a contiguous string of characters in comments field to be assembled; 2 BCD char per computer word. MACHINE ORIENTED LANGUAGE: OSAS/OSAS-A § 171. . 82 Pseudos (Contd.) Code 244:171.82.0 .83 Interpretive: none . .84 Direct: all machine operation codes, described in Section :121, Instruction List. Description BCDR: FLX: as BCD except 1 per word. causes a contiguous string of characters in comments field to be assembled; 2 Flexowriter char per word. FLXR: • • . • • • • as FLX except I per word. © 1963 by Auerbach Corporation ~nd BNA Incorporated 3/63 244: 172.100 _STANDARD EDP • CDC 160-A REIORTS M. O. Language SICOM MACHINE ORIENTED- LANGUAGE: SICOM § • 14 172. .1 GENERAL • 11 Identity: SICOM Interpretive System. • 12 Origin:. Scientific Computers, Inc., Minneapolis, Minn. .13 Reference:. SICOM Reference Manual, CDC Publication No. 515. • 14 Description Many SICOM instructions offer a choice of relative or absolute addressing. When the relative mode is selected (by an instruction), the instruction address is interpreted as being relative to the location of the instruction; e. g., the address 0025 would refer to a location 25 SICOM locations forward from the instruction that contained it. Use of the relative mode is essential in subroutines that must be relocatable; no means of relocating routines that use absolute addresses is provided in the SICOM system. SICOM offers the choice of a variety of input-output media, including punched tape, punched cards, magnetic tape, typewriter, printer, and plotter. Numeric data can be in floating or fixed point decimal format. Alphameric data can be input, stored, compared, merged, and output - an unusual and valuable capability in an interpretive system. SICOM is an interpretive system that simulates on the binary CDC 160-A a slower pseudo computer with decimal addressing, floating point decimal arithmetic, 16 two-dimensional index registers, and a repertoire of 133 one-address instructions. Programs can be coded in the SICOM language or translated into SICOM from the INTERCOM 1000 interpretive language for the Bendix G-1s. The INTERCOM -toSICOM translators are described in Section 244:184. Operation and performance of the SICOM interpreter are covered in Section 244:192. The SICOM instruction repertoire includes such useful facilities as inverse divide and reverse subtract. Integer operands up to 9,999 in magnitude can be specified as literals in the address portion of arithmetic instructions. The common mathematical functions such as square root and log, which are built into the instruction repertoire of many interpreters, require transfers to standard subroutines in the SICOM system. User-coded subroutines in either SICOM or 160-A machine language can be added to the SICOM subroutine library. All computations except index register operations are done in the floating point mode. Each data item occupies four 160~A words, or two SICOM locations, and consists of sign, 10 decimal digit mantissa, and exponent. Each instruction occupies two 160-A words, or one SICOM location, and consists of sev~n digits: one digit to specify an index register, two digits to specify the operation code, and four digits to specify the operand address. The use of numeric rather than mnemonic operation codes, which is quite common among interpretive languages, tends to increase the time required to learn and code in the system. In 160-A systems with the maximum 32,768 words of core storage, the SICOM addresses uOOO through x999 are assigned to the top two banks; otherwise all SICOM addressing is decimal. The 16 SIC OM index registers are designated 0 through 9 and u through z. Each index register is divided into two sections, i and j, and each section consists of a base, a difference (or increment), and a limit. Instructions are provided to set any part of any register to a literal value, to increment or decrement either base by its associated difference and then compare the resulting base with the limit, to clear all index registers, and to transfer data between index registers and the accumulator. The contents of both the i base and the j base of the specified index register are added to the instruction address to form the effective operand address. This double indexing can greatly facilitate the processing of two-dimensional arrays. © 1963 Description (Contd. ) .15 Publication Date: . • • . November, 1962 (Preliminary manual dated June, 1962). .2 LANGUAGE FORMAT . 21 Diagram LOC • 22 I K OP ADDR I NOTES Legend LOC: •. specifies location of the instruction, using a 4-decimal-digit address; not punched on program tape. K: specifies one of 16 index registers numbered 0-9 and u-x. OP: . specifies the operation to be performed, using 2 decimal digits. (In some cases K and ADDR also help to define the operation. ) ADDR: • • . • . • • • . specifies an absolute address or an address relative to the command being executed, using 4 decimal digits; or specfies a 4-digit literal. . by Auerbach Corporation and BNA Incorporated 4/63 244:172.220 . CDC 160-A 1172. · 22 .43 ~ •• 431 Data layout: .432 Data type: . . • (CDntd.) NOTES: ••• used for coding sheet documentation only. • 23 Corrections:. no special provisions. • 24 Special Conventions .241 Compound addresses: • none. .242 Multi-addresses: none. in certain operation codes, • 243 Literals: ••••••• contents pf the ADDR'field are interpreted as a 4digit llteral operand. · 244 Special coded none; but in relative adaddresses: • dressing mode (entered by special instruction) all addresses are relative to location of command being executed. .3 LABELS:........ none; all operands are identified by their pseudo addresses ill 4-digit decimal form. (Core storage banks 6 and 7, when installed are assigned addresses uooo through v999 and wOOO through x999, respectively. ) .4 DATA • 41 Constallts .411 Maximwn size constants Machine form External form Integer: • • • . •• none. Fixed numeric: •• none. Floating numeric Decimal: 1 to 8 decimal digits; with point, minus sign, and e (for exponent) as required. Octal: • . not used. Binary: • not used. Alphameric: any length; stored as 8 characters per block of 2 consecutive SICOM locations. .412 Maximwnsize literals Machine form External form Integer: •••••• 4 decimal digits; for index register operations only. Fixed numeric: • . none. Floating numeric DecimaJ.: • 4 decimal digit integer. Octal: •.• not used. Binary: •. not used. Alphameric: none. .42 Working Areas .421 Datt layout: • 422 Data type: • • • 4/63 Input-Output Areas .5 PROCEDURES .51 Direct Operation Codes • 511 Mnemonic: • • 512 Absolute Existence: Number: • Example: • Comment: not permitted • mandatory. 60. 30 means "add". K and ADDR portions are used to specify variations of the 00 and 01 operation codes. See Paragraph. 83 for complete instruction list. .52 Macro-Codes:. none. .53 Interludes: •• none. • 54 Translator Control: see Section 244:192 . •6 SPECIAL ROUTINES AVAILABLE .61 Special Arithmetic: • . none. • 62 Special Functions .621 Facilities: . • . • square root, log, exponential, sine, cosine, and arctangent are provided as standard SICOM subroutines • • 622 Method of call:. • . . • load into SICOM storage before use and enter via operation code 70. • 63 Overlay Control: • none. • 64 Data Editing: • performed automatically by the SICOM input and output instructions. .65 Input-Output Control • 651 File labels: . . . . • . 652 Reel labels: . . • 653 mocking:. . • . • 654 Error control: .• • 66 Sorting: .• • 67 Diagnostics • 671 Dmnps:. . absolute addresses are used. implied by instruction; . floating numeric or alphameri&. absolute addresses are used., implied by instruction: floating numeric or alphameric. • 672 Tracers: . • 673 Snapshots: SICOM instructions are ,provided to write and search for magnetic tape file numbers . none. by own SICOM coding. automatic, by SleOM magnetic tape read and write instructions. none. no special routines; dumps can be readily coded in SleOM. optional trace mode is an integral feature of SleOM; see Section 244:192 • none. / MACHINE ORIENTEP Lt-NGUAGE: SICOM § 2_44: 172.700 172. .83 .7 LIDRARY FACIUTlES .71 Identi~: • 72 Kinds of Libraries ...... SICOM subroutine libraries. • 721 Fixed master: • • • .722 Expandable master: . 723 Private: no. yes • yes • • 73 Storage Form: . punched tape • • 74 Varieties of Contents: . standard SICOM subroutines (square root, log, exponential, sine, cosine, arctangent), plus user-developed routines. .... • 75 Mechanism • 751 Insertion of new item: • add to subroutine master tape. • 752 Language of new item: • SICOM or 160-A machine language. .753 Method of call: ••.• load required routines at execution time. .76 Insertion in Program: each library routine is inserted once, as a closed subroutine. All addresses within a routine must be relative rather tha:n absolute so the routine can be relocated. .8 MACRO AND PSEUDO TABLES .81 Macros: none. .82 Pseudos: none. .83 Interpretive K OP ADDR K K K *K "'K K K K *K *K *K *K *K *K *K *K "'K "'K *K *K *K "'K *K *K 02 03 04 05 06 12 13 14 15 16 20 21 22 23 24 25 26 27 30 31 32 33 34 35 Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Interpretive (Contd.) K OP ADDR K K K K K K K K K 36 37 40 41 42 43 44 45 46 Y Y Y Y Y Y Y Y Y K 47 Y K K K K K "'K *K *K *K *K *K "'K *K *K *K K K *K *K "'K *K 50 51 52 53 54 55 56 57 60 61 62 63 64 65 66 67 70 Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y K *K *K 75 76 77 71 72 73 74 Operation Set i base. Set i difference. Set i limit. Decrement i base! Increment i base. Set j base. Set j difference. Set j limit. Decrement j base. Increment j base. Load absolute 'value. Load negative. Load. Inverse divide. Divide. Multiply. Interchange • Extract. Add. Subtract. Add absolute value. Reverse subtract. Replace add. Compare numeric. © 1963 Y Y Y 00 01 02 03 AD04 05 06 07 08 09 10 l! K- 00 K K K K K K 00 00 00 00 00 00 00 00 Kf K 12 13 14 016 17 0018 AD19 0020 0021 AD22 AD23 0024 0025 0027 0028 29 60 61 by Auerbach Corporation and BNA Incorporated Operation Output floating point and tab. Output floating point and cr. Output fixed point and tab • Output fixed point and cr. Set fixed point output format • Output carriage returns and tabs; Output tabulating number. Output a command from memory. Write file number on Magnetic Tape. Search magnetic tape for File Number. Group Input. Single Input. Read Octal Tape. Alphanumeric Output. Load A.N.R • Compare A.N. R. Merge into A.N.R. Extract A. N. R. JUmp if accumulator is Zero. Jump if accumulator is Non-Zero. Jump if accumulator is Positive. Jump if accumulator is Negative. Jump unconditionally. Jump unconditionally. Jump unconditionally. Jump unconditionally. Jump unconditionally. Selective Jump one. Selective Jump two. Selective Jump one and two. Jump to machine language Subroutines. Jump back relative. A.N.R. to storage. Accumulator to-storage. No operation. Selective Stop 1. Selective Stop 2. Stop display 3. Stop display 4. Halt and gate input. Select relative mode. Select absolute mode. Select non-trace mode. Reset trade mode. Clear index registers. Select Flexowriter input. Select Flexowriter output. Select Typewriter input. Select Typewriter output. Select printer. Select tape to printer. Select magnetic tape drive. Backspace AD records. Write on magnetic tape. Read magnetic tape. Index to accumulator. Accumulator to index. mock copy. Block clear. Punch octal tape. Punch special tape. Read special tape. Return to Mark 60. Return to Mark 61. 4/63 244: 172.830 § CDC 160-A .83 172. .83 Interpretive (Contd.) K 1 2 3 4 5 4/63 OP 01 01 01 01 01 ADDR Operation 62 63 64 65 66 67 70 71 72 73 75 D78 79 Y Y Y Y Y Return to Mark 62. Return to Mark 63. Return to Mark 64. Return to Mark 65. Return to Mark 66. Return to Mark 67. Return to Mark 70 (S. R. Exit) Return to Mark 71. Return to Mark 72. Return to Mark 73. Output last location. Set floating point output format. Punch stop, check and leader. Load positive constant. .84 Load negative constant. Divide into constant. Divide by constant. Multiply by constant. Interl!retive (Contd.) K OP ADDR 6 7 8 9 X y Z 01 Y Y Y Y Y Y Y 01 01 01 01 01 01 Operation Add constant. Subtract constant. Subtract from constant. Shift accumulator. Start automatic computation. Set address for start trace. Set address for stop trace. Where A. N. R. is the alphameric data register. K is any SICOM index register.Y is any SICOM storage location. ... denotes the address can be relative as well as absolute. Direct Codes: • . • • . none in SlooM; 160-A machine language subroutines can be entered using SICOM operation code 74. 244:173.100 CDC 160-A Machine-Oriented Language INTERFOR MACHINE ORIENTED LANGUAGE: INTERFOR .§ 173. • 14 .1 GENERAL .11 Identity: INTERFOR. • 12 Origin:. Control Data Corp. and Mr. Gordon S(anley, General Motors Corporation. .13 Reference: . . • . • • . INTERFOR Reference Manual, CDC PUblication ~, September, 1962 •. • 14 Description provide 1,024 locations of INTERFOR storage which can hold the user's program and data. Bank switching is handled automatically by the interpreter. Core storage banks 4 through 7 cannot be addressed in the INTERFOR system • The INTERFOR repertoire includes instructions to load or store a particular element of a matrix stored in columnar form. The starting location of the matrix and the row and column number of the desired element are specified in the instruction. The "equality search" and "threshold search" instructions search a list of operands in sequential locations and transfer control when an operand equal to or greater than the value in the accumulator is found. A conventional set of instructions is provided to load, increment, and test the six index registers. INTERFOR is an interpretive system that facilitates the coding of scientific and engineering problems by simulating on the 160-A a slower pseudo computer with a repertoire of 22 single-address instructions, including floating point arithmetic on operands consisting of a 33-bit signed binary fraction and a lO-bit signed binary exponent. The word size and instruction repertoire are largely compatible with the more powerful CDC 1604 and 1604-A. Input and output operations in INTERFOR programs are handled by return jumps to standard subroutines rather than by direct operation codes. Data may be read in via the 167 Card Reader, the paper tape reader, or the typewriter. Each input subroutine converts one floating point data item from decimal to binary form and leaves the result in the accumulator. Date output may be via the paper tape punch, typewriter, or 166 Printer. Each output subroutine converts the data item in the accumulator to decimal form and outputs the item, followed by a tab or carriage return. No provision is made for magnetic tape input-output. The standard INTERFOR external subroutines are: arc tangent, sine, cosine, arc cosine, arc sine, power series expansion, exponential, square root, log, and plot. CDC 160- A machine language coding can be incorporated into INTERFOR programs by exiting from and re-entering the interpretive system via special instructions. .Each INTERFOR storage location occupies four words of 160-A core storage and is. assigned a fourdigit octal address. An INTERFOR location can hold one data item or a pair of instructions. Each instruction consists of eight octal digits: two digits to specify the operation .code; one digit to specify which (if any) of the six INTERFOR index registers shall be used to modify the operand address; one digit to specify a breakpoint halt, depending upon console switch settings; and four digits to specify either the base operand address or the operand itself. INTERFOR programs can be coded directly in the octal format described above, or they can be written in symbolic form and assembled by FLAP, the INTERFOR assembly program. FLAP permits the use of three-character mnemonic operation codes, labels of up to eight characters, comments, and decimal constants. Input to FLAP can be on punched tape or cards. The binary object program is punched on tape, and a listable output showing both the symbolic and translated instructions can be punched on tape or listed by the 166 Printer. FLAP normally requires two passes for an assembly. lf the available storage capacity is exceeded, a third pass is required. Symbol table capacity is approximately 500 labels. FLOADER is a special load routine for the binary program tapes produced by FLAP assemblies. The INTERFOR interpretive system fits into storage bank 0 and leaves 337 INTERFOR locations, which are usually assigned to the external system subroutines such as square root, exponential, and sinecosine. Banks I, 2, and 3 (when installed) each © 1963 Description (Contd. ) Execution times for INTERFOR programs are not available from the manufacturer. When an error is encountered, the interpreter halts, and the operator can initiate the type-out or punch-out of an error message consisting of an error code, the instruction word that caused the error, and its INTERFOR location. The main advantages INTERFOR has over the SICOM interpretive system described in Sections 202:172 and 202:192 are the convenience of symbolic coding and the similarity of INTERFOR to machine language programming for the CDC 1604 and 1604-A. SICOM, on the other hand, offers a larger instruction repertoire, magnetic tape operations, alphameriC data handling capabilities, and a trace mode. .8 OPERATION CODES .81 Macros: by Auerbach Carparation and BNA IncorJ1Orated . none. 4/63 244: 173:820 § CDC 160·A 173. .83 Interpretive Octal Code .82 Pseudos (FLAP Assembly Routine) REM: •• EQU: . ORO: • DEC: • BSS: • OCT: • END: •• 4/63 identifies comments. assigns the value of an expression to a label. defines starting address of a block of INTERFOR instructions. identifies a decimal constant to be converted to binary form at load time. reserves a block of storage locations. identifies a signed octal constant. indicates end of symbolic program. I AUERBACH { .$J 12 13 20 22 30 31 32 33 36 50 51 52 53 54 56 57 64 65 75 76 34 35 FLAP Code IDA LAC STA AJP FAD FSB FMU FDV SSK ENI INI LIU LIL ISK SIU SIL EQS THS SL] SLS MEL MES Operation Load. Load complement. Store. Conditional jump. Floating add. Floating .subtract. Floating multiply. Floating divide. Storage skip. Enter ind~x. Increment index. Load index, upper. Load index, lower. Index skip. Store index, upper. Store index, lower. Equality search. Threshold search. Unconditional jump. Unconditional stop. Matrix element load. Matrix element store. • II 244: 181.100 STANDARD EDP REPORTS CDC 160/160-A Program T ransl afor OSAS/OSAS-A PROGRAM TRANSLATOR: OSAS!OSAS-A § 181. .1 GENERAL . 11 Identity: • .12 .13 Originator:. Control Data Corporation • .14 Maintainer: Control Data Corporation. One Sixty Assembly System. OSAS. .15 Availability: OSAS; March, 1963. OSAS-A; November, 1962. One Sixty- A Assembly System. OSAS-A. .2 INPUT · 21 Language Description OSAS and OSAS-A are two-pass translators. The version of the translator to be used in a given assembly can be a previously used translator which suits the job at hand, or can be specifically set up ,for the occasion. The master version exists on punched tape, and includes all input-output media subroutines which may be used during the translation. An input parameter entered into the processor specifies the media for the four input-output transfers which occur during assembly. These transfers provide for reading the source program , writing and reading back the intermediate output, and writing the object program and output to be listed. Only those subroutines which are required remain in storage along with the translator. Obtaining the desired form of the translator is considered Phase I of the assembly. Phase II assembles the program. Pass I reads symbolic input from punched tape, magnetic tape, or cards. Intermediate output from Pass I can be recorded on paper tape of magnetic tape, and is read back in as the input for Pass II. Pass II generates assembled binary coding and a BCD-coded output list. Output to be listed can be recorded on paper or magnetic tape, or directly on a line printer. Assembled instructions are contained in groups of up to 71 words, in binary card column format. . 211 Name: .212 Exemptions: .22 Form .221 Input media: · 222 Obligatory ordering: · 223 Obligatory grouping: .23 In the 160, the input-output subroutines are placed in the symbol table, which has room for 340 sym boIs; the maximum useful size is approximately 250 symbols because the symbol table area holds the input-output subroutines. In the 160-A the symbol table size is approximately 1,000 symbols. A third pass will be required if both the list output and the assembled output are put on punched tape. Note that the assembler cannot produce a list directly by means of the 161 Typewriter, but can list on -line by means of the line pririter. .231 Maximum number of source statements: • 232 Maximum size source statements: • • • • .233 Maximum number of data items: •• • .3 OUTPUT .31 Object Program © 1963 • 312 Language style: • • 313 Output media: .32 paper tape. punched cards. magnetic tape. none. none. Size Limitations .311 Language name: The machine language output includes word count, starting address, and relocation instructions. This output can optionally include a checksum. If the object program output is on paper tape, this image is placed in six-bit characters, and the record is only as long as required. The card image, if placed on magnetic tape, is a fixed length of 160 BCD characters. OSAS, OSAS-A . none. no limit; programs can be segmented. Maximum number in core storage at one time is approximately 300 . 79 char. depends on space available in symbol table (see Description) • relocatable binary machine code • up to 71 machine words, with word count, optional checksum, starting address for the words, and a code to indicate which words may be relocated. This format applies to 1 card, 1 block of 160 BCD char on mag tape, or to paper tape, except that paper tape record may be shorter according to word count • paper tape, punched cards, or magnetic tape. Conventions .312 Standard inclusions: • by Auerbach Corporation and BNA Incorporated bank control card (OSAS-A), and transfer address card. 6/63 CDC 160/160-A 244: 181.330 .46 §lSI. _33 Documentation .461 Identity: Subject Provision Source program: optional; may print, or may prepare tape or cards, or suppress output altogether. optional; see source program entry above. none. none. using listable output. Object program: • Storage map: • Restart point list: Language errors: .4 TRANBLAT1NGPROCEDURE .41 Phases and Passes Phase I: n: Pass 1lI: specify input-output media. Read in assembly program; set it up for job at hand. Optional output of this version of assembler for future use. ••• Phase n Pass I: Pass •• .42 Optional Mode • 421 .422 .423 .424 .425 Translate: •• Translate and run: Check only: Patching: Updating: .43 Special Features read symbolic input. store condensed version of each statement in core storage as intermediate output of assembIer. translate op codes. form symbol table. generate binary intermediate output if core storage area is too small. scan intermediate output and generate binary object program. output listable and assembled programs. •• optional; used to output listable object program on paper tape. .431 Alter to check only: .432 Fast unoptimized translate: .433 Short translate on restricted program: . 44 Bulk Translating:. . 45 Program Diagnostics: 6/63 Translator Library .5 TRANSLATOR PERFORMANCE .51 Object Program Space .511 Fixed overhead: . none . . 512 Space required for each input-output file: as coded • • 513 Approximate expansion of procedures: 1 complete instruction per elementary statement. .52 Translation Time .521 Normal translating: • .53 Optimizing Data: • • .54 Object Program Performance: essentially as good as hand coding (***). .61 Translating Computer .611 Minimum configuration: .62 no. none. COMPUTER CONFIGURATIONS' yes. no. no. no; reassemble. no. Source program paper tape can be updated in a separate run using program A 2.01 A, Paper Tape Edit. no. approximately 75 msec per statement using lOW-density magnetic tape. In a card or paper tape system, speed is limited by these input-output devices. .6 •612 Larger configuration advantages: no. none for direct access; add any routines desired following source program. basic 160 (4,096 words of storage) or 160-A (S, 192 words of storage) with paper tape input-output • card, mag tape inputoutput for faster speed • Using mag tape on either computer for storing intermediate output, pass II is initiated automatically. 160-A may have additional storage added for larger symbol table. Target Computer .621 Minimum configuration: .622 Usable extra facilities: punched tape systems as above. card, magnetic tape inputoutput. larger core storage . • yes • by incorporating separate routines. (***) Estimate by editorial staff. See 1:010:400 PROGRAM TRANSLATOR: OSAS!OSAS·A 244: 181. 700 §lBI. .7 ERRORS, CHECKS AND ACTION Check or Error Interlock Missing ennies: Unsequenced entries: Duplicate names: hnproper format: Incomplete ennies: Target computer overflow: Inconsistent program: Direct address mode assigned too large an address: Relative address mode has modifier out of range: none. none. check error flag in listing. none. check for undefined error flag in listing. symbols none. none. check range error flag in listable output. check range error flag in listable output. and E field of instruction cleared to zero. error flag in listing. error flag in listing. check megal op code: check Illegal character: E field of instruction check out of range: Location out of range using lower core counter (CON): check .B Action error flag in listing. error flag in listing. ALTERNATIVE TRANSLATORS: none. © 1963 by Auerbach Corporation and BNA Incorporated 3/63 244: 182.1 00 • STANDARD EDP • REl'ORTS CDC 160.A Program Translator 160.A FORTRAN PROGRAM TRANSLATOR: 160·A FORTRAN § 182. .12 .1 GENERAL .11 Identity:. .12 Description . . . . . . CDC 160-A FORTRAN. Description (Contd.) time. Approximately 4,000 words of storage are required, including provision for format control and Boolean operations; but not including the table of addresses of variables. Each floating point variable requires three words of storage, and each fixed point constant or variable requires two. Summary The l60-A FORTRAN compiler produces a pseudo object language in core storage which is ready to be executed under control of an interpreter ,routine, also stored in core storage. The compiler equipment required is a basic l60-A computer (8,192 words of storage), two magnetic tape units, and an input unit for the source program (which can be on punched tape, cards, or magnetic tape.) It is possible to substitute the CDC 167 card reader and punched tape for the two magnetic tape units. These fixed storage requirements are not as severe for the 160-A computer as for the 160. The largest matrix which can be inverted in the basic 160-A (8, 192 words of core storage) is 33 by 33, and this matrix requires approximately 3, 300 words of storage. The inversion routine requires approximately 500 words of storage. The 169 Auxiliary Memocy Unit provides up to 24,576 additional words of core storage. Compiling Time The COMMON statement can provide data linkages between programs and subprograms. However, in order to be used together, the programs and subprograms must be compiled together. Forty-seven types of error codes can be indicated via listable output during compilation. If an error occurs, compilation conUnues but no object code is created. Operation of the Translator The only available compiling times are those for compiling the matrix inversion routine, which has 66 statements. The program contains 11 DO statements. 'These times (supplied by the manufacturer) are 37 seconds for a magnetic tape system and 5 minutes (estimated) for a card/paper tape system. The object program is in core storage ready'for interpretive execution. Model 163 magnetic tape units (30 KC) and the Model 167 card reader (250 cards per minute) were used. Compilation is accomplished in two passes. Pass I reads the translator program from one of the magnetic tape units, reads the source statements, makes records of names, subroutines, etc., and produces an intermediate output on the second magnetic tape unit. Intermediate processing follows based on information extracted from the source program. This processing includes generating coding for indexing, and computing storage space required for interpretive and library routines. Pass II loads the intermediate program into core storage and produces the pseudo object language. Unassigned memory references are completed, library routines are inserted, and the interpretive routine is loaded from the first magnetic tape unit. The manufacturer claims an average compiling speed of 125 statements per minute for 160-A FORTRAN. At this point the program in core storage can either be executed or be written out for later use. Timing of basic operations, executed interpretively, is listed below in comparison with timing of subroutines by themselves. Timing of Execution of Pseudo Object Program Interpretive execution times of object programs are available for matrix inversion and for basic operations. The subroutine for matrix inversion inverts a 10 by 10 matrix in 53 seconds, and a 20 by 20 matrix in 7 minutes. The estimate for a 30 by 30 matrix using 160-A FORTRAN was not given, but it is probably I close to the time estimated for 160 FORTRAN-A (20 minutes). Optional Compiler Outputs 160-A FORTRAN Subroutine Interpretation Alone a. Memory map. b. Reloadable object program, in pesudo object language. Size Limitations The interpretive routine, library functions, table for allocation of variable addresses, and input-output subroutines must all be in core storage at execution © 1963 DO loop control: Fixed point add: Floating pOint add (subroutine): Floating point multiply (subroutine ): Floating point divide (subroutine ): by Auerbach Corporation and BNA Incorporated 1.4 msec. 4.5 msec 0.02 msec. 7.4 msec. 4 msec. 18 msec. 14 msec. 26 msec. 19 msec. 5/63 CDC 160-A 244: 182.120 § 182. .12 .12 Description (Omtd.) Desc:i:-iption (Omtci.) Library Timing of Execution of Pseudo Object Program (Contd. ) 160-A FORTRAN Subroutine Interpretation Alone Natural log function: Exponential function: Exponentiation: . Sine function: Square root: Single subscripted floatingaddC(I) = C(I) + C(I + 1): Double subscripted floating add A(I, J) =A(I, J) + A(I, J + 1): Triple subscripted floating add B(I, J, K) = B(I, J, K) + B(I, J, K + 1): 5/63 150 msec. 180 msec. 270 msec. 167msec. 100 msec. 15 msec. 200 msec. 380 msec. 71 msec. 123 msec. 90 msec. Eight standard functions are supplied for use by the • program. Other functions may be written as subroutines and compiled with the source program. The number of subroutines is unrestricted, except by the core storage available. The limit is seven in 160 FORTRAN-A. A system tape editing routine is available which can add routines to the library itself. Computer Configurations Unlike 160 FORTRAN, which is limited to punched tape for compiling and execution, 160-A FORTRAN permits the use of the following magnetic tape, card, line printer, and punched tape equipment: CDC 163 or 1607 Magnetic Tape Unit (30 KC) CDC 167 Card Reader (250 cards/minute) IBM 088 Collator (650 cards/minute) CDC 170 Card Punch (100 cards/minute) CDC 1612 Line Printer (1,000 lines per minute, numeric) CDC 166-2 Line Printer (150 lines per minute). 32 msec. 80 msec. I AUERBACH I ~ 244: 183.100 .STMDARD EDP • RElDRTS CDC 160-A Program Translator INTERCOM PROGRAM TRANSLATOR: INTERCOM § 183. 12 .1 GENERAL .11 Identity: .12 Description which may arise in the translation are preceded by a "e" on the output tape, denoting a need for analysis of the INTERCOM program and correction of the SICOM object program. All data tapes must be manually repunched because INTERCOM uses an "excess 50" exponent notation while SICOM uses straight powers of 10; e. g., 48. 123.in INTERCOM is • 123e-2 in SICOM. Double Precision INTERCOM Translator. Single Precision INTERCOM Translator. These routines translate programs coded in the popular INTERCOM interpretive language for the Bendix G-15 computer into the SICOM interpretive language for the CDC 160-A. The SICOM language and interpretive system are described in Sections 244: 172 and 244:192 respectively. Two versions of the translator have been developed to accommodate programs written in either single or double precision INTERCOM 1000. The single precision version can also translate programs coded in INTERCOM 500X. An INTERCOM source program tape must be punched from the original coding sheets on a Flexowriter with 160-A coding; G-15 program tapes cannot be directly used. Output from the one-pass translators is a program tape in SICOM language. Ambiguities © 1963 Description (Contd.) A general one-to-one correspondence exists between INTERCOM and SICOM instructions, but use of certain INTERCOM commands and facilities necessitates the inclusion of closed SICOM subroutines to perform the corresponding functions. The translator automatically includes the follOWing SICOM subroutines wherever their G-15 counterparts are called for: square root, log-exponential, sin-cos, arctan, magnetic tape. .13 Originator:. . . . . . • Scientific Computers, Inc., Minneapolis, Minn. .14 Maintainer: Control Data Corp. , Minneapolis, Minri~ .15 Availability: November, 1962. by Auerbach Corporolion and BNA Incorporated 4/63 244:191.100 CDC 160/160-A Operating Environment OPERATING ENVIRONMENT: GENERAL § 191. .1 GENERAL .11 Identity: • . . . . . . • no integrated supervisor available. • 12 Description No integrated supervisor is available for the 160/160-A systems. .511 Tracing (Contd.): . • • because of conflicting storage allocation conventions. Storage required is 358 words. Average program running speed is 75 instructions per second. TRACK is called in by operator as needed • none. .512 Snapshots: .• . 52 Post Mortem: several separate routines are provided to dump core storage to magnetic tape, paper tape, typewriter, or 1612 printer. Printed output is in octal form. .6 OPERATOR CONTROL: as incorporated in user's program • Error halts indicate address at console. •7 LOGGING: • . . . • . . as incorporated in user's program . .8 PERFORMANCE .81 System Requirements Library subroutines are loaded at translation time under operator control. .13 Availability: • 14 Orig!nator: • .. .. library routines described are available now. . . .. .. Control Data Corporation and members of SWAP Users' Group. .15 Maintainer: . .. .. .. .. .. Control Data Corporation and SWAP. .2 PROGRAM LOADING .21 Source of Programs .211 Programs from on -line libraries: . • • . . . • none. .212 Independent programs: on punched tape, cards, or magnetic tape. .214 Master routines:. . . . punched tape, cards, or magnetiC tape. .22 LibrarX Subroutines: by operator selection; loaded at translation time. • 23 Loading: Sequence: . manually controlled. .3 HARDWARE .811 Minimum configuration: computer with minimum core storage, paper tape reader, and punch. This is also the minimum SWAP computer. .812 Usable extra facilities: punched cards, magnetic tape. none. .813 Reserved equipment: .82 System Overhead .821 Loading time: .. ALLOCATION:. . • • fixed. .4 RUNNING SUPERVISION: • console alarms (display of halt locations). .822 Reloading frequency: •5 PROGRAM DIAGNOSTICS • 51 O}mamic .83 .511 Tracing: Program Space Available: . . TRACK; SWAP program listing G1.01. This routine provides a record on punched tape of initial and terminal addresses of all conditional branch in ... structions of a 160 program. TRACK is not used with the 160-A computer © 1963 by Auerbach Corporation and BNA Incorporated (all times approximate) OSAS, OSAS-A - 45 sec. 160 FORTRAN and 160 FORTRAN-A - 70 sec in 3 parts. AUTOCOMM - 45 sec. ,INTERFOR - 20 sec . 160-A FORTRAN - 5 sec in 2 parts (magnetic tape). only FORTRAN must be reloaded • OSAS-OSAS-A, all of core. 160 FORTRAN, 2, 240 for object code and data. 160 FORTRAN-A, 1,560for object code, 4,000 for data. 160-A FORTRAN, 5,000 for object code and data on minimum machine. Up to 29, 000 available using 169 AUXiliary Memory Unit (core storage). 4/63 244:191.830 § CDC 160/160-A 191. • 83 Program Space AvaUib1e (Contd. ):.. AUTOCOMM, 4, 000 for program, 4, 000 to 28, 000 for data. INTERFOR, 1,712 INTERFOR words (1 lNTERFOR word = 4, 16D-A words) for data and program on minimum machine. Up to 3,760 INTERFOR words are avaUsble . • 84 Program Loading Time: ? 4/63 I AUERBACH I .$J 244: 192.100 .STAADARD EDP • REIORTS CDC 160.A Operating Environment SICOM OPERATING ENVIRONMENT: SICOM § 192. •2 .1 GENERAL .11 Identity:. .12 Description ·.21 . . . . . . SICOM Interpretive System. This routine interprets and executes programs written in the SICOM language, described in Section 244:172. SICOM programs can be run on a minimwn CDC 160-A system (8K core store, paper tape reader, and punch), but operation is much simpler if a 161 Typewriter is available. All standard 160-A input-output devices can be utilized. The interpretive routine occupies all 4, 096 locations of core storage bank 0 and the top 96 locations of bank 1. The remaining 4, 000 words of bank 1 are available to hold the user's program, subroutines, and data. Each decimally addressed SICOM pseudo location occupies two 160-A words, so the minimwn 160-A provides 2,000 SICOM locations. Each instruction requires one SICOM location and each data item requires two locations. Each additional 4, 096word bank of core storage increases the nwnber of available SICOM locations by 2~ 000; a 32K 16D-A would have 14,000 SICOM locations, with addresses uOOO through x999 assigned to the top 4, 000 locations. SICOM programs are normally prepared and stored on punched tape. Because there are no parity checks on punched tape operations, the system includes input and output tape verification operations. Verification involves rereading the tape and comparing two check swns. Library subroutines must be added to the program tape or loaded separately each time the program is rim. Programs can be relocated in core storage only if all addressing is in the relative mode. The relative mode is therefore standard for generalpurpose subroutines, but its use in complex programs is very inconvenient because the relative address of a particular data item varies with the location of the instruction referencing it. · 22 Library subroutines: punched tape. • 23 Loading Sequence: . manually controlled• • 24 Interpreter Input .241 Language Name: • Exemptions: • 242 Form: ••.• November, 1962. .14 Originator: • Scientific Computers, Inc., Minneapolis, Minn. .15 Maintainer: . • • • . • Control Data Corp., Minneapolis, Minn. © 1963 SICOM. none. punched tape. .3 HARDWARE ALLOCATION .31 Storage: . . • . . . . • programs can be relocated only if all addresses are relative rather than absolute. . 32 Input-Output Units: •• selected by instructions • .4 RUNNING SUPERVISION • 41 Simultaneous Working: none • . 42 Multi-programming: . none • • 43 Multi-sequencing: .• none • .44 Errors, Checks and Action Error Check or Interlock reread. using "verify input tape" instruction. Allocation impossible: none. In-out error - single: parity check In-out error - penistent: parity cbeck Loading input error: Execution times for SICOM instrUctions are not available from the manufacturer. Availability: Source·of Programs .211 Programs from on-line libraries:. . . . . • . none. • 212 Independent DrogramS: punched tape. .213 Data: I. . • •• • • punched tape, punched cards magnetic tape or typewriter • 214 Masfer routlnes:. . . punched tape. SICOM has a convenient built-in trace Ill,ode that facilitates program testinK and debugging by printing. when desired, each SICOM instruction, its location, and the contents of the pseudo arithmetic register after execution of the instruction. .13 PROGRAM LOADING Storage overflow: Invalid index value: Arithmetic overflow: Underflow: Invalid operation: Improper format: Invalid address: • 45 RestartS:... by Auerbach Corporation and BNA Incorporated none. check check none. check checks check Action error stop If check sums do not agree. try again. traosfer to user-coded error routine. stop; display error code. stop; display error code. stop; display error code. stop; display ,eIfOl :COde. stop; display error code. no provisions. 4/63 CDC 160-A 244:192.500 § 192. .8 PERFORMANCE Sxstem Requirements .5 PROGRAM DIAGNOSTICS .81 .51 Dynamic .811 Minimum configuration: Minimum 160-A (8,192 words of core storage, punched tape reader and punch). .812 Usable extra facilities: 161 Typewriter (recommended for ease of system operation), 167 Card Reader, 166 Line Printer, 163 Magnetic Tape Unit, 165 Plotter. 603 and 606 Magnetic Tape Units will be available in the future. .813 Reserved equipment: 4, 192 -core storage locations. .511 Tracing: ............... trace mode can be entered .512 Snapshots: . . and emerged from upon execution of instructions in specific locations selected by the "start trace" and "stop trace" instructions. Jump switch 4 inhibits all tracing. When tracing, the following information is output on the specified device after execution of each SICOM instruction: the location of the instruction, the instruction itself, and the contents of the pseudo arithmetic register (A.R.). none. .52 Post Mortem: none. .6 OPERATOR CONTROL • 61 Signals to Operator: • .62 Operator Decisions: • • keyboard data entry or Selective Jump-switch settings. •7 LOGGING: . . . . • . . as incorporated in user's program. .82 .. .821 Loading time: .822 Reloading frequency: .83 4/63 System Overhead console displays (4 octal digits) or programmed typeouts. Program Space :AvailaEle: .. ? SICOM master routine can be kept in working storage. 1+20 ::: 2,OOO(B - I), where 1 is number of instructions, D is number of data items, and B is number of 4, 096-word core storage banks. .84 ProgramLoadin~ .85 Program Performance: Time: ? ? / 244:201.001 CDC 160-A . System Performance NOTES ON SYSTEM PERFORMANCE § 201 . .1 GENERALIZED FILE PROCESSING Because CDC 160 applications have been on scientific problems, generalized file processing problems A, B, C, and D have not been timed. The 160 is used for off-line card-to~tape and tape-to-printer transcriptions, and these proceed at maximum card and printer speeds . .2 SORTING Sort routine Sort 3X is described in Problem Oriented Facilities, Section 244:151. 13 . .3 MATRIX INVERSION The standard estimate of the Users' Guide, which is based on the time for floating point cumulative multiplication, was used. Configuration IX uses floating point subroutines and Configuration X uses the 168- 2 Floating Point Arithmetic Unit. CDC's standard routine for floating point subroutine matrix inversion is also timed . .4 GENERALIZED MATHEMATICAL PROCESSING Both double precision fixed point coding using the 168-1 Fixed Point Arithmetic Unit and floating point subroutines are timed for Configuration IX, with output via the typewriter. Configuration X is timed using subroutines and the 168-2 Floating Point Arithmetic Unit, with output via the paper tape punch. Input to both systems is via the paper tape reader . .5 GENERALIZED STATISTICAL PROCESSING Fixed point machine coding is used. Input is read by the paper tape reader; therefore, time for both configurations is the same. © 1963 by Auerbach_Corporation and BNA Incorporated 3/63 244:201.011 CDC 160-A System Performance CDC 160-A SYSTEM PERFORMAMCE © 1963 by Auerbach Corporation and BNA Incorporated 3/63 244:201.012 CDC 160·A CDC 160·A SYSTEM PERFORMANCE WORKSHEET DATA TABLE 2 Configuration Worksheet Item Reference IX 5 Fixed/Floating point IX IX, X X Fixed Floating Floating Paper Tape Reader Paper Tape Reader Paper Tape Reader 161 Typewriter 161 Typewriter Paper Tape Punch input 80 digits 120 digits 120 digits output 80 digits 120 digits 130 digits input Unit name output Size of record Standard Mathematical Problem A input T1 228 343 343 output T2 12,000 18,000 1,180 input T3 228 343 343 output T4 12,000 18,000 1,180 m. aec/record T5 26 90 (. . .) 90 ( . . . ) m. sec/5 loops T6 60 665 90 m. aec/report T7 155 618 ( . . .) 618 ( ••• ) m, sec/block 4:200.413 m. sec penalty 7 Paper Tapa Reader Unit name Size of block Standard Statistical Problem A 60 digits Records/block B 1 m. sec/block Tl 171 m.,Bec penalty T3 171 m. sec/block T5 0.220 m. sec/record T6 --- m. sec/table T7 0.667 4:200.512 C.P. (*.*) Estimate. Se. 1:010.4. 3/63 I AUERBACH I ~ 244:201.300 .ST!"!RO _EDP ~, REPORTS CDC 160-A System Performance SYSTEM PERFORMANCE § .312 Timing Basis: . . . . . 201. .3 MA TRIX INVERSION . 31 Standard Problem Estimates . 313 Graph:. . . . . . . . . using estimated procedure outlined in Users' Guide, 4:200.312 . see graph below . .311 Basic Parameters:. . . general, non-symmetric matrices, using floating point to at least 8 decimal digits. 100 7 4 IJ 2 7 I I 4 Time in Minutes for Complete Inversion ~ II 10 I I J 1 / I 2 11- X J I 7 If I I I 4 I IJ 2 / V J 0.10 / 7 II ~ 4 2 0.01 j 'I Ij rt II 2 ~ 4 7 10 2 4 7 2 100 4 7 1,000 Size of Matrix © 1963· by Auerbach Corporation and BNA Incorporated 3/63 244:201.320 § CDC 160-A . . 32 subroutine from SWAP listing . see graph below. . 322 Timing Basis: 201. . 323 Graph:. . . • I 1. 06 Routine general, non-symmetric matrices, using floating point to at least 8 decimal digits. .321 Basic Parameters: . 100 7 4 2 / 10 7 I 4 Time in Minutes for Complete Inversion J I / 2 V 7 4 J J 2 V 0.10 I 7 I II 4 2 0.01 2 4 7 2 4 10 2 100 Size of Matrix 3/63 7 4 7 1,000 244:201.400 SYSTEM PERFORMANCE § 201. .4 GENERALIZED MATHEMATICAL PROCESSING .41 Standard Mathematical Problem A Estimates • 411 Record sizes: • • . . • . 10 signed numbers, avg. size 5 digits, max. size 8 digits. .412 Computation: . . • • . . 5 fifth-order polynomials. 5 divisions. 1 square root. .413 Timing basis: . . • . . . using estimating procedure outlined in Users' Guide, 4:200.413 . .414 Graph: • • • . . . • . • see graph below. CONFIGURATION IX;DOUBLE LENGTH(6.6 DIGIT PRECISION); FIXED POINT R = NUMBER OF OUTPUT RECORDS PER INPUT RECORD 100,000 7 4 2 R - 1.0 10,000 ~ 7 -, 4 - Time in Milliseconds per 2 Input Record R --- 0.1 1,000 = 7 4 - ~ ~ ~ 10-'''' II i-' ......... R _ O.Ol -. 2 100 7 4 - 2 10 0.1 2 4 7 2 1.0 4 7 2 10.0 4 7 100.0 C, Number of Computations per Input Record © 1963 by Auerbach Corporation and BNA Incorporated 3/63 244:201.415 CDC 160-A § 201. .415 Graph: . . . . . . . . . see graph below. CONFIGURATION IX; SINGLE LENGTH (8 & 2 DIGIT PRECISION); FLOATING POINT R = NUMBER OF OUTPUT RECORDS PER INPUT RECORD 100,000 7 4 ,.,.".- 2 R = 1.0 10,000 , 7 4 --:r Time in Milliseconds per Input Record 2 .,. \\..'" / ., ~~ ~ ", ~ ~ , ~ , ~ b~' ~'" ~. ~ 1,000 7 4 2 100 7 4 2 10 2 0.1 4 7 2 1.0 4 7 2 10.0 C, Number of Computations per Input Record 3/63 4 7 100.0 SYSTEM PERFORMANCE § 244:201.416 201. . 416 Graph: . . . . . .. see graph below . CONFIGURATION X; SINGLE LENGTH (8 & 2 DIGIT PR ECISION); FLOATING POINT R = NUMBER OF OUTPUT RECORDS PER INPUT RECORD 100,000 1 4 2 10,000 1 oJ! IA ./ 4 ~ Time in Milliseconds per Input Record 2 R = 1.0 ~ 1,000 ~"" R ",0.\ 1 ~ ~ ~ ~ ,";:0 0.0\ 4 2 100 7 4 2 10 2 4 0.1 7 2 1.0 4 7 2 10.0 4 1 100.0 C, Number of Computations per Input Record © 1963 by Auerbach Corporation and BNA Incorporated 3/63 244:201.500 CDC 160-A .512 Computation: . § 201. •5 GENERALIZED STATISTICAL PROCESSING .51 Standard Statistical Problem A Estimates • 511 Record size:. . . . •• augment T elements in cross-tabulation tables • using estimating procedure outlined in Users' Guide, 4:200.513 . see graph below • .513 Timing basis: . thirty 2-digit integral numbers. • 514 Graph: •..••.•. 10,000 7 4 2 1,000 7 ~ 4 Time in Milliseconds per Record I' ./ I- 2 ~ 100 7 4 2 10 7 4 2 2 4 2 7 10 4 2 7 100 T. Number of Augmented Elements 3/63 4 7 1,000 244:211.101 CDC 160·A Physical Characteristics CDC 160·A PHYSICAL CHARACTERISTICS © 1963 by Auerbach Corporation and BNA Incorporated 3/63 244:211.102 CDC 160·A CDC 160·A PHYSICAL CHARACTERISTICS Unit Name Processor Paper Tape Reader Paper Tape Punch Fixed Point Arithmetic Unit Fixed Point Arithmetic Unit Auxiliary Memory Unit Card Reader 160-A 350 BRPE-11 168-1 168-2 169-1 169-2 169-3 167 36x 62x30 10x12x9 29x18X30 29X 18x30 43 x48X 20 30X19X41 BI0 25 290 340 600 to 800 210 75 data 100 power Part of 160 IDENTITY Model Number Height x Width x Depth, in. Weight, Ibs. PHYSICAL Maximum Cable Lengths Part of 160 Temperature, of. Storage Ranges Humidl ty, '7. ATMOSPHERE Temperature, of. 80 max 80 max 80 max 80 max 80 max Humidity, '7. 40-60 40-60 40-60 40-60 40-60 7,860 2,900 4,200 4,700 5,600 6,500 630 Working Ranges Heat Dissipated, BTU/hr. Air Flow, cfm. Internal Filters Yes No Yes Yes Yes No Nominal 115 115 115 115 ll5 115 Tolerance 10'7. 10'7. 10'7. 60 60 60 I 1 1 Voltage Nominal ELEC. TRICAL 60 60 Tolerance Phases LoadKVA 3 1 1.8 1 0.1 NOTES 3/63 60 Cycles I AUERBACH / ~ 0.9 1.4 1.6 2.1 0.2 244:211.103 PHYSICAL CHARACTERISTICS CDC 160-A PHYSICAL CHARACTERISTICS (Contd.) Unit Name IDENTITY Model Number Height XWidth XDepth, in. Card Punch Adapter Line Printer Typewriter Incremental Plotter Line Printer Magnetic Tape Unit Tape Unit Controller Magnetic Tape Unit Tape Unit Controller Card Reader Punch Control Card Read/ Punch Magnetic Tape Unit Magnetic Tape Unit 170 166-2 161 165 1612 603 162-1 606 162-2 1610-A 1609 163 164 51X40x26 68 X 27 X 28 68x27x28 690 690 9,500 1st unit 6,500 eachadd'l 5,500 1st unit 2,500 each add'l Yes Yes 29x18x30 41X35X19 240 850 Temperature, of. 80 max Humidity, "I. Weight, 1bs. 38 X30 X30 56X72X31 72 X28 X.33 890 800 290 800 340 600 775 80 max 70 max 80 max 80 mex 80 max 80 max 70 max 70 max 40-60 40-60 40-60 40-60 40 -60 40-60 40-60 40-60 40-60 2,750 7,500 6,400 10,000 2,400 4,200 4,000 5,680 800 800 Yes Yes 350 47 X 18 X 14 190 29x 18 X 30 72X28X33 29x 18x30 43X20X48 PHYSICAL Maximum Cable Lengths Temperature, of. Storage Ranges Humidi ty, "I. Working Ranges ATMOSPHERE Heat Dissipated, BTU/hr. 2,300 500 Air Flow, cfm. Internal Filters Yes Yes Yes No Nominal 115 115 115 120 Tolerance 10"1. Nominal 60 Tolerance 3 Yes 115 115 115 5"1. 10"1. Yes 115 115 208 115 208 208 115 115 Voltage ELECTRICAL 5"1. 60 60 60 60 60 60 60 60 400 60 400 60 60 60 1 1 1 1 1 1 1 1 1 3 1 3 3 1 1 0.8 0.8 0.8 0.15 1.9 3.0 2.0 0.9 2.0 0.9 2.5 1.4 Cycles Phases Load KVA 0.7 3.0 NOTES , © 1963 by Auerbach Corporation and BNA Incorporated 3/63 244:221.101 ·STANDIRD EDP • REPORTS CDC 160-A Price Data PRICE DATA § 221. IDENTITY OF UNIT CLASS No. Central Processor 160-A 168-1 168-2 Computer, including 8, 192 words of core storage Buffer channel Paper tape reader and punch Auxiliary Arithmetic Unit (fixed point) Auxiliary Arithmetic Unit 169-1 169-2 169-3 Auxiliary Core Storage 1 module of 8,192 words 1 module of 16,384 words I module of 24,576 words Storage InputOutput Name 161 167-1 167-2 170 166-2 1612 1610-A 603 162-1 606 162-2 163 165-2 On-Line Input-Output Typewriter Card Reader Card Reader (Hollerith -to- BCD conversion) Card Punch Controller Buffered Line Printer Line Printer Card Reader, Punch, Printer Control Magnetic Tape Unit Tape Synchronizer for 603 M. T. U. Magnetic Tape Unit Tape Synchronizer for 606 M. T. U. Magnetic Tape System, including Control Unit and 1 Tape Unit (163-1) 2 Tape Units (163-2)· 3 Tape Units (163-3) 4 Tape Units (163-4) Incremental Plotter © 1963 PRICES Monthly Rental Monthly Maintenance Purchase $ $ $ 2,250 225 90,~00 390 450 125 130 15,500 18,750 1,250 2,000 2, 750 100 150 200 50,000 80,000 110,000 262 400 460 335 690 1,840 1,500 550 500 825 700 140 140 150 90 325 400 190 120 105 140 115 10,500 15,700 18,100 13,700 30,000 73,500 57,000 24,000 20,000 36,000 28,000 970 1,482 1,994 2,506 285 235 400 565 730 130 38,800 59,300 79,800 100,300 9,000 by Auerbach Corporation and BNA Incorporated 3/63 CDC 3200 Control Data Corporation c c AUERBACH INFO, INC. PRINTED IN U. S. A. CDC 3200 /. Control Data Corporation / ,/ AUERBACH INFO, INC. PRINTED IN U. S. A. 245:001.001 CDC 3200 Contents CONTENTS 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 14. 15. 16. 17. 19. 20. 21. 22. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . Data Structure . . . . . . . . . . . . . . . . . . . . . . . . . System Configuration ............. . 6- Tape Auxiliary Storage System . . . . . . V 6-Tape Business-Scientific System . . . . . VI VnA 10- Tape General System (Integrated) . . . . VIlB 10-Tape General System (Paired) .. Typical 8-Tape System. Internal Storage Core Storage. . . . . .. . 828, 838 Disk File . . . . . . . . . . . . . . . . . . 1311, 2311 IBM Disk Storage Drives . . . . . . . . 3235 Drum Storage . . . . . . . . . . . . . . . 861, 862 Drum Storage .. . Central Processors 3204 Basic Processor. 3205 Scientific Processor .. . 3210 Data Processor . . . . . . . . . General Processor .. . 3215 Console.. . ...................... . Input-Output; Punched Card and Tape 405 Card Reader (and controllers) 415, 523 and 544 Card Punches (and controllers) .. . 3691, 3694 Paper Tape Reader/Punches . . . . . Input- Output; Printers 3152 Line Printer . . . . . . . . . . . . . . . . 1403 IBM Printer, Models 2 and 3 . . . . . 501 Line Printer. 505 Line Printer . . . . . . . . . . . . . Input-Output; Magnetic Tape 600 Series, 7-track tape units. 600 Series, 9-track tape units .. Input-Output; Other 3682 Satellite Coupler . . . . . . . . . . . 3681 Data Channel Converter . . . . . . Incremental Plotter . . . . . . . 3293 Simultaneous Operations . . . . . . . . . . . . . . . . Instruction List . . . . . . . . . . . . . . . . . . . . . . . Data Code Table . . . . . . . . . . . . . . . .... . Problem Oriented Facilities . . . . Process Oriented Languages 3200 COBOL .. 3200 FORTRAN. Basic FORTRAN II .. Machine Oriented Languages 3200 COMPASS . . . . Basic Assembler. Operating Environment 3200 SCOPE . . . . System Performance . . . . . . . . . . . . . . . . . Worksheet Data Table . . . . Generalized File Processing .. . Sorting . . . . . . . . . . . . . . . . . . . Matrix Inversion . . . . . . . . . . . . Generalized Mathematical Processing .. . Generalized Statistical Processing . . . . . . . . . . . . . . . Physical Characteristics. . . . . . . . . . . . . . . . . . . . . . . .... . Price Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . © 1964 Auerbach Corporation and Info, Inc. 245:011 245:021 245:031 245:031.1 245:031. 2 245:031. 3 245:031. 4 245:031. 5 245:041 245:042 245:043 245:044 245:045 245:051 245:051 245:051 245:051 245:061 245:071 245:072 245:073 245:081 245:082 245:083 245:083 245:091 245:092 245:101 245:101 245:102 245:111 245:121 245:141 245:151 245:161 245:162 245:163 245:171 245:172 245:191 245:201.001 245:201. 011 245:201.1 245:201. 2 245:201. 3 245:201. 4 245:201. 5 245:211 245:221 . 11/64 245:011.100 CDC 3200 Introduction INTRODUCTION § 011. The Control Data 3200 is a scientific computer system with large-scale performance capability and a medium-scale price tag. Its large-scale processing ability is derived from up to 32,768 24-bit words of core storage with a cycle time of only 1. 25 microseconds, a 0.5microsecond control register file, an interrupt system, and up to eight input-output data channels. (For comparative purposes, the processing capacity of the 3200 is somewhere between that of the older IBM 7044 and 7094, but with a monthly rental of about $18, 000 as compared to $37,000 for the 7044 and $66, 000 for the 7094. *) First delivered in May 1964 (just after the announcement of the IBM System/360 computer systems), the Control Data 3200 has since had its competitive position improved by recent price reductions, by a considerable improvement in the speeds of its decimal arithmetic operations, by the announcement of the program-compatible CDC 3100 and 3300 systems, and by the provision of IBM System/360-compatible magnetic tape units. For scientific processing, the performance of the CDC 3215 General Processor approximately equals the performance of the Model 60 processor of the IBM System/360. The comparative shortcomings of the Control Data system (no radix conversions, only three index registers, and a short word length) are roughly balanced by its comparative assets (eight available data channels, fast memory search operations, block operations** in parallel with both computation and I/O, and no restrictions on the type of peripherals which can be connected). Financially, the performance comparison between the two systems seems to favor Control Data, with a 10-tape 3200 system renting for $18, 010 per month versus the $36,395 needed to obtain a comparable System/360. The lower cost of the Control Data 3200 system is due mainly to reductions in the cost of the central processor and associated control equipment. Central processor cost is less than 20% of the total cost of a typical 3200 installation, as opposed to more than 40% of the total for a typical IBM 7044 or 7094 installation. This points up rather vividly the present trend toward reduced internal processing costs, while the input-output equipment remains relatively expensive. From an economic viewpoint, the 3200 processor is especially attractive for use in multicomputer applications. A Control Data 3200 system using two processors can, for example, provide the processing capability of an IBM 7094 installation at about half the cost. The Control Data 3200 system is machine-code compatible only with the CDC 3100 and 3300 systems. It has, in addition, some compatibility through common programming languages with the Control Data 3400, 3600, and 3800 computer systems. Hardware The 3200 system offers a choice of four different processors which differ primarily in the volume and type of data they can handle most efficiently. The comparative features of the available processors are as follows: 3204 Basic Processor - contains arithmetic and control logic to perform 24-bit fixed-point arithmetic, 48-bit fixed-point addition and subtraction, Boolean, word-handling, and decision-making operations. An equivalent processor, with slower core storage modules and reduced I/o throughput capabilities, is available in the Control Data 3100 computer system (Computer System Report No. 254) . • It 3205 Scientific Processor - has the capabilities of the Basic Processor, but can also handle 48-bit floating-point arithmetic, as well as 48-bit fixed-point multiplication and division. 3210 Data Processor - has the capabilities of the Basic Processor, plus the ability to handle 6-bit binary-coded decimal characters. This includes add and subtract (but not multiply and divide) operations on decimal fields up to 12 characters in length. * Rates based on comparable 10-tape configurations. ** Block operations include memory searches and mass transfer operations. @1964 Auerbach Corporation and Info, Inc. 11/64 245:011.101 CDC 3200 § OIL • 3215 General Processor - an expanded unit that includes all the facilities of the 3204, 3205, and 3210. An equivalent processor, with faster core storage units and a few additional instructions to assist in multiprogramming, is available in the Control Data 3300 computer system (Computer System Report No. 255). Each of the four models is essentially a single-address, fixed word-length, binary processor. The additional capabilities of the 3205, 3210, and 3215 are implemented by extra hardware packages which enable "scientific" and "BCD" type operations to be performed automatically. However, all commands in the 3200 instruction repertoire can be executed (either by hardware or software) on any processor model. The Basic Processor, for example, is not 'capable of directly processing instructions that require the floating-point orBCD packages. fustead, these instructions (called "trapped" instructions) are automatically detected and their functions are simulated by subroutines. To the user then, every 3200 can appear as a system with all of the facilities of a binary machine plus some of those of a decimal character-oriented one. This capability is certainly an advantage, but it may also be a disadvantage if improperly utilized. The ability to use programs from other installations without regard to the processor model for which the program was written is certainly desirable. On the other hand, a practice of running programs which were not designed for the actual processor may result in unnecessarily long execution times, due to inadvertent overuse of the subroutines that simulate the instructions which cannot be directly processed. fustruction execution times are fast: fixed-point 24-bit addition requires only 2.5 microseconds, while a floating-point multiplication with two storage references takes 19 microseconds. fu the optional BCD mode, two 12-character operands can be added in 12 microseconds. No facilities for direct multiplication or division of BCD fields are available. It appears that the BCD operations will be useful for auxiliary processing of alphabetic and decimal data, but not particularly suitable for major commercial applications. An "off-line" search facility allows consecutive locations in core storage to be searched while the main program continues unhindered. The usefulness of this facility is limited by the fact that, unless the program has been carefully designed, core storage may already be "saturated" by the other demands of the processor and peripheral devices. Future developments in this area could, however, be of great value in information storage and retrieval applications. An unusual "power-off" interrupt feature automatically transfers control to a fixed location in the event of power failure within the 3200 system. A special routine then prepares the system for an orderly shutdown so that no data will be lost. The whole operation takes 30 milliseconds; 16 milliseconds to detect the power failure and 14 milliseconds to process the interrupt. The Control Data 3200 system can be equipped with up to eight input-output data channels, enabling the system to compute while simultaneously performing up to eight read-write operations which use any eight peripheral devices in the system. Use of the available buffered peripheral units, which require little data channel time, can allow the number of concurrently operating peripherals to increase to well beyond the number of data channels in a system. Computation is normally delayed by input-output operations while the data being transferred is accessed or stored away in core storage. This delay, which amounts to one core storage cycle per word transferred, can sometimes be avoided by using different core storage modules for computational and input-output purposes. However, while it is possible to avoid delaying computation, it is not possible to increase the total system throughput above 666,667 words (2,666,667 characters) per second. Many of the input-output controllers supplied with Control Data 3200 computer systems have two or more data channel connections. Such controllers can be used to switch peripheral units between two computer systems. The use of more than one central processor in an installation is comparatively frequent in Control Data 3000 Series installations, as both peripheral units and storage modules can easily be switched under program control. Significant recent announcements by Control Data have included the IBM System/360compatible magnetic tape units mentioned above, the 2,000, OOO-character-per-second transfer rate of the Model 861 and 862 Drum Storage Units, and the provision of controllers for IBM 1311 and 2311 Disk Storage Drives. The present peripheral units available with the 3200 computer system (and with all Control Data 3000 Series computer systems) include: • 11/64 Model 828 and 838 Disk Files Capacity: 33 or 66 million characters Access time: 187 milliseconds average INTRODUCTION 245:011.102 § OIl. • IBM 1311 and 2311 Disk Storage Drives Capacity: 3 or 9.7 million characters Access time: 170 milliseconds average • Model 3235 Drum Storage Capacity: 0.5 million characters Access time: 17 milliseconds average Data transfer rate: 167, 000 characters per second • Model 861 and 862 Drum Storage Capacity: 4.2 or 2.1 million characters Access time: 17 or 8.6 milliseconds average Data transfer rate: up to 2, 000, 000 characters per second • Punched card equipment Maximum reader speed: 1, 200 cards per minute Maximum punch speed: 250 cards per minute • Paper tape equipment Maximum reader speed: 1,000 frames per second Maximum punch speed: 110 frames per second • Line printing equipment CDC 501: 1,000 lines per minute CDC 505: 500 lines per minute CDC 3152: 150 lines per minute IBM 1403 Model 2: 600 lines per minute IBM 1403 Model 3: 1, 100 lines per minute • 7-track and 9-track magnetic tape units Maximum 7-trackspeed: 120,000 six-bit characters per second Maximum 9-track speed: 90,000 eight-bit characters per second Software / I The major assembly language for the Control Data 3100, 3200, and 3300 computer systems is called 3200 COMPASS. It bears only a general resemblance to the COMPASS language used for the Control Data 3600, and programs writtcn in the two assembly languages are not interchangeable. The 3200 COMPASS assembler requires 8,192 words of core storage and 5 input-output devices, including at least 2 magnetic tape units during the assembly process. The output of the assembler is machine-language coding suitable for use with the SCOPE Operating System. (A reduced form of the 3200 COMPASS assembler, with no macro facilities. is available for Control Data 3100 computer systems which have only 4. 096 words of core storage.) The standard mathematical compiler is 3200 FORTRAN. This compiler uses a FORTRAN IV style language which is not simply an exact copy of some other language, but rather an independently-designed scientific programming language that offers a number of performance-improving features. In this respect it appears that Control Data is continuing a policy established in its FORTRAN-63 compiler for the CDC 1604; that of constructively re-evaluating the "standard" language before implementation. This policy gives promise of continued improvements in FORTRAN. Programs writtcn in FORTRAN can be compiled on any Control Data 3100, 3200, or 3300 computer system that has at least 8,192 words of core storage, 3 magnetic tape units, and 2 other input-output devices. The 3200 FORTRAN compiler was released to customers in November 1964. A Basic FORTRAN II system is available for smaller configurations. COBOL language processing is provided for the Control Data 3100, 3200, and 3300 computer systems by the 3200 COBOL compiler. The language includes almost all of Required COBOL-61, and the compiler requires a 4, 096-word svstem with 3 tape units and 2 other inputoutput devices for compilation. Release of 3200 COBOL to customer is scheduled for March 1965. The SCOPE Operating System helps to assemble programs and to provide input-output services as required. It uses between 700 and 1,500 core storage locations to hold the resident program during operation; the exact amount depends upon the number and type of input-output routines required by a particular program. At present 3200 SCOPE is oriented toward magnetic tape processing, but a random access enhancement, specifically designed to servicc the IBM 1311 and 2311 Disk Storage Drives, is expected to be released in Spring 1965. Other program packages under development include a Report Generator (scheduled for June 1965), a Linear Programming Package (June 1965), and a PERT Package (March 1965). In summary, the Control Data 3200 is a fast, modestly-priced system that fully upholds Control Data's position in the market as a producer of powerful scientific computers at attractive prices. The 3200 is also significant in pointing up the growing financial imbalanr between the cost of internal processing and that of peripheral equipment. ©1964 Auerbach Corporation and Info, Inc. 11/64 245:021.100 CDC 3200 Data Structure DA TA STRUCTURE § 021. .1 .2 STORAGE LOCATIONS Name of Location Size Purpose or Use Word: 24 bits Character: Block: 6 bits 1 to N characters or 1 to N words basic addressable unit (data or instruction). addressable data unit. Search, Move, and Inputoutput instructions . INFORMATION FORMAT Type of Information Representation Operand: . . . . . . . . . . . . . . . . . . . . . 24- or 4S-bit fixed point word. 4S-bit floating point word (optional). 6-bit character. 4-bit BCD character (optional) . Instruction: . . 1 or 2 words. Field: . . . . . . . . . . . . . . 1 to 13 BCD characters. ©1964 Auerbach Corporation and Info, Inc. 11/64 245:031.001 CDC 3200 System Configurotion SYSTEM CONFIGURATION § 031. GENERAL Every Control Data 3200 computer system includes the following units: • A 3204, 3205, 3210, or 3215 Central Processor. • A 1. 25-microsecond Core Storage Unit ranging from 8,192 to 32,768 words (32,768 to 131,072 characters) in capacity. • A desk console with detachable keyboard and adjacent I/O typewriter console. • A Power Converter and Control Unit. Two 3206 Data Channels are included in the basic system. Up to six more can be added, so that a fully-extended Control Data 3200 computer system will have eight data channels. Eight peripheral units or controllers can be connected to each data channel. The data channels used in all of the Control Data 3000 Series computers present a common interface with peripheral units. As a result of this, any of the 3000 Series peripheral units described in this report can be connected through a 3206 Data Channel to a Control Data 3200 computer. Details of the loadings these units place on a Control Data 3200 computer system are described in the Simultaneous Operations section of this report, starting on page 245:111. 100. Some peripheral units or controllers can be connected to more than one data channel. This facility may be used either to allow two concurrent data transmissions to take place, or to allow the peripheral unit to be switched between two computer systems. A bank of magnetic tape units connected to a dual-channel controller is a case where multiple data transmissions would be the normal reason for having the two data channels; while a printer connected to two different computer systems by way of a dual-channel controller could be used by either system, as the situation in the computer room demands. The core storage modules can similarly be connected to, and accessed by, two computers. Each 8, 192-word module is independent and permits dual access by a second processor or special device. SELECTION OF REPRESENTATIVE CONFIGURATIONS The Control Data 3200 computer system is shown in the following Standard System Configurations, as defined in the Users' Guide, page 4:030.100: • • • • Configuration V: 6-Tape Auxiliary Storage Configuration. Configuration VI; 6-Tape Business/Scientific Configuration. Configuration VIIA; 10-Tape General Integrated Configuration. Configuration VnB; 10-Tape General Paired Configuration, using a Control Data 160 Computer System as the satellite system. AN ADDITIONAL ILLUSTRATED CONFIGURATION In addition to the Standard System Configurations illustrated in this section, an additional 8-tape configuration is shown (page 245:031. 500), which allows for the switching of peripheral units and for the joint use of core storage by two independent computer systems. 11/64 245:031.1 00 SYSTEM CONFIGURATION § 031. .1 6-TAPE AUXIIJARY STORAGE SYSTEM; CONFIGURATION V Deviations from Standard Configuration: auxiliary storage capacity is 65% larger. card reader is 140% faster. card punch is 150% faster. magnetic tapes are 40% faster. Equipment Rental 828 Disk File (33 million char) 3432 Controller $ 2,400 1,050 8,192 words of Core Storage 3204 Basic Processor Console with Monitor Typewriter 4,300 3206 Data Channels (2) 405 Card Reader (1,200 cpm) 3248 Controller 400 100 415 Card Punch (250 cpm) 3245 Controller 295 330 505 Line Printer (500 lpm) 3256 Line Printer Controller 635 515 603 41. 7KC Magnetic Tape Units (6) 3229 Controller TOTAL RENTAL: ©1 964 Auerbach Corporation and Info, Inc. 3,300 600 $13,925 11/64 245:031.200 § CDC 3200 031. .2 6-TAPE BUSINESS/SCIENTIFIC SYSTEM; CONFIGURATION VI Deviations from Standard Configuration: . card reader is 140% faster. card punch is 150% faster. magnetic tapes are 40% faster. Eguipment 16,384 words of Core Storage $ 1,250* 3215 General Processor Console with Monitor Typewriter 5,150 3206 Data Channels (2) 405 Card Reader (1,200 cpm) 3248 Controller 415 Card Punch (250 cpm) 3446 Controller 295 450 505 Line Printer (500 lpm) 3256 Line Printer 635 515 603 41. 7KC Magnetic Tape Units (6) 3229 Controller TOTAL RENTAL: * Price shown is for the additional 8,192 words over and above the basic core storage included in the General Processor rental. 11/64 400 100 3,300 600 $12,695 SYSTEM CONFIGURATION § 245:031.300 031. .3 10-TAPE GENERAL SYSTEM (INTEGRATED); CONFIGURATION VITA Deviations from Standard Configuration: . core storage is 33 % larger. 3 less index registers are provided. card reader is 140% faster. card punch is 150% faster. Equipment 32,768 words of Core Storage 3215 General Processor Console with Monitor Typewriter $ 3,500* } 5,150* 3206 Data Channels (4) 240* 405 Card Reader (1,200 cpm) 3248 Controller 400 100 415 Card Punch (250 cpm) 3446 Controller 295 450 505 Line Printer (500 lpm) 3256 Controller 635 515 604 60KC Magnetic Tape Units (6) 3229 Controller 3,600 600 604 60KC Magnetic Tape Units (4) 3228 Controller 2,400 425 TOTAL RENTAL: $18,310 * The rental for the 3215 General Processor includes the charges for the first 8,192 words of core storage and for the first two 3206 Data Channels. ©1964 Auerbach Corporation and info, inc. 11/64 245:031.400 § CDC 3200 031. .4 10-TAPE GENERAL SYSTEM (PAIRED); CONFIGURATION VIIB* Deviations from Standard Configuration: . 3 less index registers. direct connection to satellite system. card reader is 1100% faster. Eguipment 16,384 words of Core Storage $ 1,250** 3215 General Processor Console with Monitor Typewriter 5,150** 3206 Data Channels (2) 405 Card Reader (1,200 cpm) 3248 Controller To Satellite 160 System (at right) 604 60KC Magnetic Tape Units (4) 3228 Controller 2,400 425 604 60KC Magnetic Tape Units (4) 3228 Controller 2,400 425 TOTAL ON-LINE EQUIPMENT: $12,550 TOTAL SATELLITE EQUIPMENT: $ 5,165 TOTAL RENTAL: $17,715 * This configuration can be rearranged in several ways: e. g., see "Typical 8-Tape System" on page 245:031. 500. * 11/64 400 100 The rental for the 3215 General Processor includes the charges for the first 8,192 words of core storage and for the first two 3206 Data Channels. SYSTEM CONFIGURATION § 245:031.401 031. SATELLITE EQUIPMENT (CDC 160) Deviations from Standard Configuration: . direct connection to main system. core storage is 100% larger. multiply/divide is included. paper tape equipment is included. card reader is 140% faster. card punch is 150% faster. magnetic tapes are 30% slower. Eguipment 4,096 words of Core Storage 160 Processor $ 1,500 Console with Monitor Typewriter Paper Tape Reader (350 cps) Paper Tape Punch (110 cps) 3681 Data Charmel Converter 3682 Satellite Coupler 275 175 4.05 Card Reader (1,200 cpm) 3248 Controller 400 100 415 Card Punch (250 cpm) 3446 Controller 295 450 505 Line Printer (500 lpm) 3256 Controller 635 515 601 21KC Magnetic Tape Units (2) 3127 Controller 500 320 TOTAL SATELLITE EQUIPMENT: $ 5,165 To 3200 System (at left) ©1964 Auerbach Corporation and Info, Inc. 11/64 CDC 3200 245:031.500 § 031. .5 TYPICAL 8-TAPE SYSTEM ...I -I To 3204 Basic Processor (with Option 2) Equipment Rental 16,384 words of Core Storage $ 1,250* 3215 General Processor Console with Monitor Typewriter 5,150* 3206 Data Channels (2) r- 405 Card Reader (1,200 cpm) 3649 Controller 400 415 Card Punch (250 cpm) 3644 Controller 295 675 501 Line Printer (1,000 lpm) 3659 Controller 865 700 604 60KC Magnetic Tapes (8) 3423 Controller 4,800 1,600 + I 0 I III 11111 I 1 I~ I I I I It I III I I II To 3681 Data Channel Converter or 3206 Standard Channel of Satellite System (at right) 3682 Satellite Coupler TOTAL ON-LINE EQUIPMENT: SATELLITE EQUIPMENT - 160 SYSTEM: $16,235 1,775 TOTAL RENTAL: $18,010 TOTAL ON-LINE EQUIPMENT: $16,235 SATELLITE EQUIPMENT - 3200 SYSTEM: TOTAL RENTAL: * The rental for the 3215 General Processor includes the charges for the first 8, 192 words of core storage and for the first two 3206 Data Channels. 11/64 175 3,050 $19,285 245:031.501 SYSTEM CONFIGURATION § 031. SATELLITE EQUIPMENT OPTION 1 (CDC 160) Equipment Core Storage: 4,096 words 160 Processor $ 1,500 Console including Paper Tape Reader/Punch and Typewriter 3681 Data Channel Converter TOTAL SATELLITE EQUIPMENT: I II I I tttH 275 $ 1,775 --".-..... To Controllers on facing page OPTION 2 (CDC 3200) -----, To Shared Core Storage of General System I 3204 Basic Processor Console with Monitor Typewriter $ 4,300 3206 Standard Data Channel I II I I t tttt ~ To Controllers on facing page TOTAL SATELLITE EQUIPMENT: $ 4,300 Less allowance for 32,768 characters of core storage included in 3204 Basic Processor: $ 1,250 EFFECTIVE TOTAL FOR SATELLITE EQUIPMENT: $ 3,050 ©1964 Auerbach Corporation and Info, Inc. 11/64 245:041.100 CDC 3200 Internal Storage Core Storage INTERNAL STORAGE: CORE STORAGE § .13 041. .1 GENERAL . 11 Identity: .. .12 Basic Use: 13 Description (Contd.) 3203 Storage Modules. It is not possible to have one 3209 and one 3203 Module in a single computer system. . 3203 Storage Module (16K). 3209 Storage Module (8K). . 14 Availability: .4 months . Description · 15 First Delivery: · May, 1964. A Control Data 3200 computer system can have 8,192, 16,384, or 32,768 24-bit word locations of core storage. The cycle time is 1. 25 microseconds per word, and the access time is 0.75 microseconds. The core storage units use a basic 8,192word module, and overlapped accesses are possible when more than one module is present. Overlapping is used principally to minimize the load placed on the central processor by input-output operations. Minimum loading occurs when the data used for computational purposes is contained in one module while the input-output areas are in a different module. As there is some common circuitry used both by the input-output transfers and by the central processor, it is not possible to eliminate completely the loading on the central processor, but even under worst-case conditions it can be reduced by over 75%. .16 Reserved Storage: · the uppermost 32 locations are, by convention, reserved for the Autoload and Autodump routines. .2 PHYSICAL FORM . 21 Storage Medium: . . . . magnetic cores . . 23 Storage Phenomenon: .. direction of magnetization . .24 Recording Permanence . . . . . . . working storage. All of core storage is available to the programmer, with no areas reserved for control functions, index registers, arithmetic operands, or other system requirements. By convention, however, the uppermost 32 words are reserved for the Autoload and Autodump routines, which can be initiated from the console. Each physical storage word consists of 28 bits: 24 data bits plus 4 parity bits. The 24 data bits are functionally broken down into four 6-bit characters, and one of the parity bits is associated with each separate character. Addressing of core storage can be either by word or by character, using 15 bits or 17 bits per address, respectively. The 3209 Storage Module contains 8,192 words of storage and is the basic module mentioned above. The 3203 Storage Module is functionally equivalent to two 3209tltorage Modules, having 16,384 words of storage arranged in two independent banks, each with its own read/write control. A Control Data 3200 computer system can have one 3209 Storage Module, or either one or two .31 .241 Data erasable by instructions: . . . . . . . yes. .242 Data regenerated constantly: ... · no. · no (safeguarded by power-off . 243 Data volatile: .. interrupt) . . no. . 244 Data permanent:. .245 Storage changeable: . no. · 27 Interleaving Levels: . no interleaving as such; however, 3203 Storage Modules provide asyn'chronous operation with overlapped module access. .28 Access TeChniques:... coincident current. · 29 Potential Transfer Rates .292 Peak data rates Cycling rates: . . . . . Unit of data: . . . . . . Gain factor: Loss factor: 800,000 cps. word or character. two banks can be overlapped. both program and inputoutput have common use of some circuitry. Data rate: . . . . . . . . 800,000 words (or characters)/ sec/module. Compound data rate: . 1,333,000 words (or characters)/ sec. .3 DATA CAPACITY Module and System Sizes Minimum Storage Identity: Modules: Words: Characters: Tnstructions: 3209 Storage Module 1 8,192 32,768 8,192 Maximum Storage 3203 Storage Module 1 16,384 65,536 16,384 © 1 964 Auerbach Corporation and Info, Inc. 2 3203 Storage Modules. 2. 32,768. 131,072. 32,768. 11/64 245:041.320 CDC 3200 § 041. .7 . 32 . 72 Rules for Combining Modules: . . . . . . . . . one 3209, or one or two 3203' s (no combinations are allowed). .4 CONTROLLER: . . . . . no separate controller required. .5 ACCESS TIMING .51 Arrangement of Heads: 1 read/write control for the 3209; 2 read/write controls for each 3203. .53 Simultaneous Operations: . . . . . . . . . . . accesses to each half (8,192 words or 32,768 characters) of the 3203, or to each one of 2 3203's, are asynchronous and independent of each other. Access Time Parameters Access time: . . . . . . . 0.75 fJ.sec. Cycle time: . . . . . . 1. 25 fJ.sec. For data unit of: . . . . 1 word or 1 character. .6 CHANGEABLE STORAGE: . . . . . . . none. 11/64 Transfer Load Size With self: . . . . . . . . . 1 to 128 characters, one character at a time. 1 to 32 words, four characters (i. e., one word) at a time. .73 .52 STORAGE PERFORMANCE Effective Transfer Rate With self: . . . . . . . . . 250,000 words/ sec. .8 ERRORS, CHECKS AND ACTION Error Check or Interlock Invalid address: none Invalid code: Receipt of data: Recording of data: Recovery of data: Dispatch of data: Timing conflicts: Action high-order bits are truncated. not possible. generate parity bit. record parity pit. parity check send parity bit. interlock until cleared. halt operation; console light. 245:042.100 CDC 3200 Internal Storage 828 and 838 Disk Files INTERNAL STORAGE: 828 AND 838 DISK FILES . 13 § 042. .1 GENERAL . 11 Identity: . 828 Disk File. 838 Disk File. . 12 Basic Use: . auxiliary storage . .13 Description The Model 828 and 838 Disk File Subsystems provide from 33 million to 264 million characters of random access storage, any part of which can be accessed within 365 milliseconds. The average access time is approximately 250 milliseconds and is made up of the positioning time, during which the access arms are positioned over the appropriate disc tracks, and a latency time while the discs revolve under the read/write heads and the required record comes into position. An independently-positionable access arm serves each disc; this is the most significant difference between the Control Data Disk Files and most of the other currently-available disc storage units, which use a comb-like access mechanism in which all of the arms move in unison. The "cylinder" mode of disc file organization, which is currently being emphasized by mM and other manufacturers, therefore does not apply to the Model 828 and 838 units. From one to four Disk Files, each with a capacity of either 33 million (Model 828) or 66 million (Model 838) characters, can be included in a subsystem. Each Disk File unit can handle two concurrent operations - which may be reading, writing, searching, or positioning - but the whole subsystem is limited to one or two concurrent operations which involve data tr!\llsmission. Whether the subsystem limit is one or two data transmission operations depends on whether a single-channel or a dual-channel controller is being used; both types are available. Operations which require data transmissions are reading, writing, and searching for data. Searching for address positions and positioning of the access arms can proceed without supervision from the central computer once they have been initiated. Reading and writing operations can handle records of any size, and data transmission takes place at either 68,000 or 110,000 characters per second, depending on whether the record is in the Inner Zone or the Outer Zone. Inner Zone records, which amount to one-third of the data capacity of the files, are transmitted at 68, 000 characters per second and place a load on the computer system's core storage of 17,000 memory cycles per second - or 2. 1%of a core storage module's maximum capacity in the case of the Control Data 3200 computer system. Outer Zone records, with their faster transmission rate, make a proportionately higher demand on the core Description (Contd. ) storage module; this amounts to 27,500 memory cycles per second, or 3. 4% of a Control Data 3200 core storage module's maximum capacity . Data searching operations make the same demands on the core storage as the reading or writing operations. In a Data Search operation, data in the files can be searched and tested for equal or greater-than conditions, using information supplied by the program for the necessary comparisons. Data searching continues until either the search is successful or the area specified as the search area has been exhausted. At the end of a search, either because the search has been successful or because no space remains to be searched, an interrupt request is sent by the Disk File to the central processor, and a flag is set showing the result of the operation. Address searching, in contrast to data searching, makes no demands on the core storage modules during its operation, nor does it require a data channel to be reserved for its use. After an address search has been initiated, it uses no processor facilities until the address position comes under the read/write heads. At this time an interrupt request is signalled, and the address search function is concluded. The address search facility minimizes the use of the data channels by making their use unnecessary when the desired record position on the discs is still some distance away from the read/ write heads. A read or write instruction is preceded by an address search, calculated to initiate an interrupt in sufficient time to allow the original read or write instruction to be given just before the desired record itself comes under the read/write heads. The rotational delay on both the Model 828 and the Model 838 units ranges from zero to 52 milliseconds, so there is a considerable advantage to be gained by reducing the time a data channel is engaged but not operating from this average rotational delay of 26 milliseconds to the time taken to recognize and service the interrupt - about half a millisecond in most cases. The data on the· Disk Files can be safeguarded by means of manual Write-Lock controls which prevent portions of the files from being overwritten. Accuracy of recording and reading back is checked by recording and checking parity bits with each character, and, at the programmer's discretion, by using the Write Check instruction. This instruction reads the data back after it has been written and compares it with the contents of the core storage locations where it was supposed to have come from. In addition, a checkword is recorded with each 256character segment. This checkword is recomputed from the bits actually in the segment whenever readout occurs and checked with the version that was recorded when the data was originally written onto the disc. © 1964 Auerbach Carporation and Info, Inc. 11/64 245:042.130 CDC 3200 .28 Ii 042. .13 Description (Contd. ) the read/write heads, at which stage data transfer begins. The Model 828 and 838 Disk Files themselves are manufactured by Data Products Corporation for Control Data Corporation. Model 828 uses 16 discs per unit and has a capacity of 33, 000, 000 characters, while Model 838 uses 32 discs per unit and has a capacity of 66,000,000 characters. • 14 Availability: 4 months . . 15 First Delivery: Nov. 1964 (Model 828) . Apr. 1965 (Model 838). . 16 Reserved Storage 4 tracks on top disc, with special fixed heads. 3 tracks per disc surface. 19 bits at the start of each 256-char. block. Clocking: Spar,es: . Address: . .2 PHYSICAL FORM . 21 Storage Medium: . multiple magnetic discs . .22 Physical Dimensions: 16 or 32 31-inch diameter discs per unit. . 23 Storage Phenomenon: magnetization . .24 Recording Permanence: .25 .29 data once recorded can be read back at any time until overwritten by program. Turning off the electrical power leaves the data intact. The discs cannot be removed from the units. Cycling rate . . Bit rate per track: Inner zone tracks Outer zone tracks Inner Zone 768 Words: 3,072 Characters: 3,072 Digits: 768 Instructions: 12 256-char. blocks: . 26 Unit of data: . . . Data rate: Inner zone tracks Outer zone tracks .27 Interleaving Levels:. no interleaving is used. . 28 Access Technigues An individual, multiple-head positioning arm is used for each disc. This arm must be repositioned whenever a new track is selected. After repositioning (where necessary) has been completed, a delay follows until the start of the selected block comes under 11/64 6-bit character . 68,000 char/sec. 110,000 char/sec. DATA CAPACITY .31 Module and System Sizes There are two modules available: Model 828, which has the same data capacity as the minimum subsystem, shown below; and Model 838, which has exactly twice the data capacity of the Model 828. Minimum Subsystem Number of units: 1 Model 828 Words: 8,500,000 33,000,000 Characters: 8,500,000 Instructions: 131,200 Blocks: .4 CONTROLLER .41 Identity Single-channel controller: . Dual-channel controllers: Maximum Subsystem 4 Model 838's 68,000,000 264,000,000 68,000,000 1,049,600 Model 3432 Disk File Controller. Models 3632 through 3635 Disk File Controllers. .42 Connection to System: from 1 to 64 Disk File Subsystems can be connected to a single computer system, depending on the availability of data channels. Any dual-channel subsystem can be connected to two different computer systems if required. No off-line connections are used. .43 Connection to Device: .44 Data Transfer Control 1,280 5,120 5,120 1,280 20 256. 350,000 bits/sec. 590,000 bits/sec. .3 Outer Zone Tracks per DiscFace: 1,200 rpm. .292 Peak data rates - Data Volume per Band of 1 Track Each disc-face is divided into two zones, an outer zone and an inner zone. Two-thirds of the data is stored in the outer zones, which have a greater capacity per track. Details of track capacity in each zone are: Potential Transfer Rates .291 Peak bit rates - Number of Locations Purpose Access Techniques (Contd. ) .441 Size of load:. . . . . .442 Input-output area:. . . 443 Input-output area access: . . . . . . . 1, 2, 3, or 4 Disk File units can be connected to a subsystem, depending on the controller model. 1 to N 256-character blocks, limited by computer system core storage size. core storage. each word fir character. INTERNAL STORAGE: 828 AND 838 DISK FILES 245:042.444 § 042. .6 · 444 Input-output area lockout: . . . . · 446 Synchronization:. . • .448 Testable conditions: . ·5 ACCESS TIMING · 51 Arrangement of Heads · 511 Number of stacks Stacks per file: Stacks per yoke: Yokes per file: . · 512 Stack movement: . .513 Stacks that can access any particular location: . . . . . . . . · 514 Accessible locationsBy single stack: With no movement: With all movement: By all stacks: With no movement: .52 .53 Simultaneous Operations: . . . . . . . . manual switches on the units prevent data from being overwritten. automatic; however an interrupt upon a specific address position passing under the heads allows data channel usage to be optimized. Ready, Busy, Access Unavailable, On Track, Write Lockout, Lost Data, Search Satisfied, Ready and Not Busy Interrupt requested, End of Operation Interrupt requested, Abnormal End of Operation Interrupt requested, Checkword Error detected. PERFORMANCE .72 Transfer Load Size With core storage: . . 1 to N blocks. .73 Effective Transfer Rate Variable, depending on record size and positioning requirements. Peak Transfer Rate for Inner Zone records is 68,000 characters per second, and for Outer Zone records is 110,000 characters per second. For random accesses with various record sizes, see the graph on page 245:042.900. 128. 8. 16 (one for each disc). horizontal only. Demands on System Component 3200 Core Storage Module: 1. 3200 Core Storage Module: 12 or 20 blocks. 768 or 1,280 blocks. 1/64th of the unit's storage capacity. one or two reading, writing, or data search operations per subsystem, plus up to two positioning operations and one address search per file unit. .523 Variation in access time Variation (msec} Average (msec} Turn on positioning arm motor:. Move head to selected track:. Confirm track address:. Wait for selected block: Transfer 1 block: 52 2.60r4.3 Total: 54.6 to 369.3 o or 11 10. o 00 250 145. 52 52. o to 26. 3. 236. none. .7 . 74 Access Time Parameters and Variations Stage CHANGEABLE STORAGE: . . .8 Condition msec per word Percentage of data transfer time Inner Zone record 0.00125 2.1% Outer Zone record 0.00125 3.4% ERRORS, CHECKS AND ACTION Error Check or Interlock Invalid address: not possible. Invalid code: check Receipt of data: 12-bit cyclic code check word per block Recording of generate 12data: bit check word. Recovery of data: none. Dispatch of data: none. Timing conflicts: none. Physical record missing: check Reference to locked area: check Wrong block address comselected: parison @1964 Auerbach Corporation and Info, Inc. Action interrupt. interrupt. interrupt. interrupt. interrupt. 11/64 245:042.900 CDC 3200 § 042. EFFECTIVE SPEED: 828 AND 838 DISK FILES Based on random accessing and varying record sizes 1,000,000 7 4 2 100,000 7 .,. ./ 4 /' ~~ 2 Characters per Second V 10,000 7 V L " 1,/ 4 I~ 2 / 1,000 7 4 -- " /' / -' -' ~ 2 100 2 100 4 2 7 1,000 4 7 2 10,000 Characters per Block 11/64 4 7 100,000 245:043.100 CDC 3200 Internal Storage IBM 1311 and 3211 Disk Storage Drives INTERNAL STORAGE: IBI.I 1311 AND 2311 DISK STORAGE DRIVES § 043. .13 .1 GENERAL .11 Identity: . . IBM 1311 Disk Storage Drive. CDC 3231 Disk Pack Controller. IBM 2311 Disk Storage Drive. CDC 3233 Disk Pack Controller. . 12 Basic Use: • . 13 Description auxiliary storage; for random or sequential access . Control Data Corporation has two Disk Pack Controllers available which connect the IBM 1311 and 2311 Disk Storage Drives to the CDC 3200 computer system. Each controller can service up to eight Disk Drives, and the controller is in turn connected to one CDC data channel. No dual-channel controllers have been announced to date for these units. The two IBM Disk Storage Drives are briefly described in Table I below; the 1311 and 2311 are more completely covered on page 414:042.100 of the IBM 1440 Computer System Report and page 420:044.100 of the IBM System/360 Computer System Report, respectively. The Track Record, Direct Seek, Scan Disk, and Seek Overlap optional features are expected to be normally used when the IBM equipment is connected to CDC computer systems. Disk Packs written on IBM 1311 or 2311 Disk Storage Drives connected to a Control Data computer system can be read back only on an equivalent type of drive which is connected to the same or another Control Data computer. It is not possible, for Description (Contd.) instance, to write a Disk Pack on an IBM computer system and then read it on a Control Data computer system; nor is it possible to write a Disk Pack on a 1311 Disk Storage Drive and read it on a 2311 Drive. Data transfer operations include Read, Write, Write with Check Read, Masked Search, and Magnitude Search operations. The data records on the discs can be physically arranged either in sectors or in tracks; in either case the amount of data transferred or searched by a single instruction is limited only by the size of the computer system's core storage. Interrupts can be set by the program to provide for separate interrupts when the Disk Drive becomes available, when an operation has been completed normally (e. g., when a search has been completed successfully or when a Write and Check operation has been completed without any recording error being discovered), or when for some reason the operation has been completed in an abnormal manner. The abnormal ending condition is signalled by means of indicator flags, which can be tested by the program. The four indicator flags associated with the Disk Storage Drives show the units' available or busy status, whether a search was successful, and whether Write Check or Address Error conditions have occurred. The IBM 1311 Disk Storage Drive operates at a peak transmission rate of 77, 000 characters per second, which places a loading on the Control Data 3200 core storage units of 2.4% of the total throughput capacity of a single module. The equivalent loading for an IBM 2311, which operates at 204, 000 six-bit characters per second, is 6.4% of the capacity of a module. TABLE I: COMPARISON OF IBM 1311 AND 2311 DISK STORAGE DRIVES AS USED IN THE CONTROL DATA 3200 COMPUTER SYSTEM Model: 1311 Disk Storage Drive 2311 Disk Storage Drive Storage capacity of 1 Disk Pack: 2. 0 million characters (20 sectors per track) 2.98 million characters (1 record per track) Discs per pack: 6 Recording surfaces per pack: 10 Tracks per disc surface: 100 Data rate: 77,000 char/sec. Rotation time: 40 msec Average positioning time: 150 or 250 msec Maximum storage capacity: 16 to 24 million characters per control unit 9. 7 million characters (1 record per track) 6 10 200 204,000 char/sec. 25 msec 85 msec 77. 3 million characters per control unit ©1964 Auerbach Corporation and Info,lnc. 11/64 245:044.100 CDC 3200 Internal Starage 3235 Drum Starage Unit INTERNAL STORAGE: 3235 DRUM STORAGE UNIT § 044. . 13 ·1 GENERAL · 11 Identity:.. 3235 Drum Storage Unit. · 12 Basic Use: • auxiliary storage. .13 Description seconds, the effective data transfer rate for a record of C characters will be: 167,000 C C + 2840 The record size used with the 3235 Drum Storage Unit can vary from one character up to the size of the core storage of the associated computer system. The effective transfer rate will depend upon the record size and the amount of rotational latency involved. Assuming an average latency of 17 milli- characters per second. The load on the core storage modules during the data transfer operation will be, for CDC 3200 computer systems, 1.25 microseconds per 4-character word, which amounts to about 5% of the total data transmission time. Preliminary information indicates that the Control Data 3235 Drum Storage Unit provides for random access to 524,788 characters with a maximum access time of 34 milliseconds. The characters are recorded serially at a track density of 560 bits per inch, and data transmission takes place at 167, 000 six-bit characters per second. 11/64 Description (Contd.) No separate controllers are used with the Model 3235 Drum Storage Unit; it is connected directly to a single data channel. A theoretical maximum of 64 Drum Storage Units can be connected to a Control Data 3200 computer system. .14 Availability:...... 9 months. . 15 First Delivery: October 1965. 245:045.100 CDC 3200 Internal Starage 861 and 862 Drum Starage Units INTERNAL STORAGE: 861 AND 862 DRUM STORAGE UNITS . 13 § 045. .1 GENERAL . 11 Identity: . 861 Drum Storage Unit. 862 Drum Storage Unit. 3416 Standard Input/Output Channel, Augmented. 3806 Standard Bi-directional Data Channel, Augmented. .12 Basic Use: auxiliary storage and intercomputer communication. .13 Description The Control Data 861 and 862 Drum Storage units provide very high data transmission rates - up to two million characters per second - and moderately fast access times. The choice between the two units will be based on whether doubled data capacity or halved access time is more valuable to a particular installation; the Model 861 Drum Storage Unit has a data capacity of 4, 186,304 6-bit characters and a maximum access time of 34.4 milliseconds, while the Model 862 has half the data capacity - 2,093,152 6-bit characters - but can access them twice as fast - its maximum access time is only 17.2 milliseconds. The physical characteristics of the Model 861 Drum are summarized, along with its performance characteristics, in Table I below. This table also shows the performance characteristics of the Model 862, but not its physical data, which have not yet been announced by Control Data Corporation. The outstanding characteristic of both these units is the high data transfer rate which can be obtained. This has been achieved by recording and reading a data band of 13 tracks in parallel and using a track recording density of 560 bits per inch. The 13 physical bits consist of 12 data bits and an associated parity bit. Each data band contains approximately 64,000 data characters in addition to system storage requirements. The highest possible data transfer rate, 2,000,000 characters per second, is conditional upon every bit in the tracks being read sequentially. As an alternative, manual switches on each Drum Storage Unit can be set so that only every second, third, fourth, eighth, sixteenth or thirty-second bit is read. This technique is called ''interlacing'' and allows slower transfer rates to be used where advisable. As a result of the interlacing facility, these drum units can be connected to computer systems which would be unable to accept the highest available data transfer rates. In selecting which of the inter lace factors should be used, an installation must consider the slowest computer which will be connected to the Drum Storage Unit concerned, and also the peak loading which Description (Contd. ) will normally occur as a result of the simultaneous operation of other peripheral units connected to the system and the Drum Storage Unit(s). However, it is not 'always necessary to consider and allow for the absolute worst-case condition, provided that such a condition is not frequent, as the drum is simply allowed to revolve again if it is unable to store away a 12-bit image safely. Such an action, which reduces the transfer rate to two 6-bit characters per drum revolution, will seriously delay the data transmission which is then occurring, but this may well be more desirable than increasing the interlace factor and so permanently reducing the transmission rate from the Drum Storage Unit. As the interlace factor is variable, the load placed on the core storage modules during data transmission also varies. With the Control Data 3200 core storage modules, where the loading is 1. 25 microseconds per word transmitted, the total loading is 62.5/1 percent of a core storage module's maximum capacity where I is the interlace factor in use. Under normal conditions, Control Data expects that an interlace factor of 2 will most commonly be used*, which gives a peak data transmission rate of 1,000,000 characters per second and uses 31% of the maximum throughput capacity of a 3200 core storage module. Single- and dual-channel controllers are available for controlling up to eight 861 and 862 Drum Storage Units. The single-channel controllers can handle only a single data transmission at a time, while the dual-channel controllers allow two simultaneous data transmissions to take place, one on each data channel. It is not necessary that both the data channels of a dual-channel controller be connected to the same computer system; an interconnection ,between computers can be achieved by connecting them to different systems. Any Control Data 3000 series computer, or a Control Data 160-A computer, can be used in conjunction with either Model 861 or 862 Drum Storage Units. In some cases, where the frequency of data arriving from the Drum Storage Units is greater than the frequency with which it can be stored in the core storage of the computer system concerned, special buffered data channels (called "Augmented" channels by Control Data) can be used. These channels have two words of storage which are used for temporary assembling and storage of data, instead of the single word which is held in the standard data channels. An Augmented channel would be needed, for example, if a Control Data 3200 Computer system, with its 1. 25 microsecond memory, were attempting to use a Drum Storage Unit with an interlace factor of 1. Here, while only 62% of the core storage cycles * An interlace factor of 2 is assumed in the associated software systems. ©1964 Auerbach Corporation and Info,lnc. 11/64 CDC 3200 245:045.130 § 045 . . 13 • 13 Description (Contd. ) would suffice to store the output of a Drum Storage Unit, it would be necessary to clear the storage buffer of a standard channel within 1. 00 microsecond in order to maintain the maximum data transmission rate. This would not be possible because the cycle time is greater than 1. 00 microsecond. In an Augmented (buffered) channel it is only necessary to empty a specific buffer within three microseconds after receipt of the final characters, and this could easily be accomplished with the CDC 3200's 1. 25microsecond core storage cycle time. Description (Contd. ) The Control Data 861 and 862 Drum Storage Units are manufactured by Control Data Corporation. . 14 Availability: •• .15 First Delivery: 9 months . 861 Drum Storage Unit • . . • • • • 862 Drum Storage Unit ••••••• April 1965. August 1965. TABLE I: FEATURES OF THE MODEL 861 AND 862 DRUM STORAGE UNITS Model: 861 862 Capacity: 4,186,304 1,046,561 2,093,152 523,288 Minimum (msec) Maximum (msec) 0.0 34.4 0.0 17.2 Transfer Rate (peak) 2,000,000 char/sec 2,000,000 char/sec 1 full core store 1 full core store 6-bit characters 24-bit words Access Time: Transfer Load Size: Minimum (char) Maximum (char) 832 Number of Tracks Track Capacity (bits) Track Density (bits/inch) ." 32,000 approx. 560 832 16,000 approx. 560 Error Checks: Recording Reading Drum Diameter 11/64 Parity bits recorded Parity checked 18 inches Parity bits recorded Parity checked ? 245:051.100 CDC 3200 Central Processors CENTRAL PROCESSORS .12 § 051. .1 GENERAL • 11 Identity: . .12 3204 3205 3210 3215 Basic Processor. Scientific Processor. Data Processor. General Processor. Description The CDC 3200 System offers a choice of four different processors which differ primarily in the volume and type of data they can handle most efficiently. The comparative features of each of the available processors are as follows: • 3204 Basic Processor - contains arithmetic and control logic to perform 24-bit fixed-point arithmetic, 48-bit fixed-point addition and subtraction, Boolean, word handling, and decisionmaking operations. GI 3205 Scientific Processor - has the capability of the Basic Processor, but can also handle 48-bit floating-point arithmetic, as well as 48bit fixed-point multiplication and division. e 3210 Data Processor - has the capability of the Basic Processor, plus the ability to handle 6bit decimal characters. This ability inclLdes add and subtract (but not multiply and divide) operations on decimal fields up to 12 characters in length. o 3215 General Processor - an expanded unit that includes all the facilities of the 3204, 3205, and 3210. Each of the four models is essentially a singleaddress, fixed word-length, binary processor. The additional capabilities of the 3205, 3210, and 3215 are implemented by extra hardware packages which enable "scientific" and "BCD" type operations to be performed automatically. However, all commands in the 3200 instruction repertoire can be executed (either by hardware or software) on any processor model. The Basic Processor, for example, is not capable of directly processing instructions that require the floating-point or BCD packages. Instead, these instructions (called "trapped" instructions) are automatically detected and their functions are simulated by subroutines. To the user, then, every 3200 can appear as a system with all of the facilities of a binary machine plus some of those of a decimal character-oriented one. This capability is certainly an advantage, but may also be a disadvantage if improperly utilized. The ability to use programs from other installations, regardless of which processor model the programs were written for, is highly desirable. On the other hand, a practice of running programs which are not designed for the actual processor may result in un- Description (Contd.) necessarily long execution times, due to inadvertent overuse of the subroutines that simulate the instructions which cannot be directly processed. Word length of core storage locations is 28 bits (24 data bits plus 4 parity bits). One location can contain an instruction, a 24-bit fixed-point binary data word, one half of a 48-bit fixed- or floatingpoint data word, or an alphanumeric word consisting of four 6-bit BCD characters. An instruction word normally consists of a 6-bit operation {or function) code, an addressing mode bit (indirect or direct), a 2-bit index register deSignator, and a 15-bit core storage address field. In some cases the indirect addressing flag, index register designation, and address bits are used for other purposes such as operand values, shift counts, and extensions of the function code or address field. Only three index registers are prOvided, and their use is pre-empted by various instructions. To some extent this limits the programmer in his use of automatic address modification techniques. Instruction execution times are fast: fixed-point 24-bit addition requires only 2.5 microseconds, while a floating-point multiplication with two storage references takes from 14 to 18 microseconds. In the BCD mode, two 12-character operands can be added in 11. 5 microseconds. These times, which are a great improvement over the initial specifications, are still slower than the equivalent binary operations, butthey are certainly fast enough for normal editing operations. A fast-access 64-word Register File, incorporated as part of each of the processors, has a cycle time of 0.5 microsecond. Although the programmer has access to all registers in the file, certain registers are reserved for specific purposes such as address storage during "block" operations. Other portions of the file can be used freely as temporary storage. The "block" operations use special processor controls and are of three types: Search, Move, and Input-Output. After one of these operations has been activated, the processor can return to its main program and continue until an interrupt is generated or the program senses completion of the block operation. Each of these operations requires three instruction words, which contain the starting and ending addresses (or source and destination addresses for a Move command) for the operation and a "reject" instruction. The reject instruction is used if the block controls or the addressed inputoutput data channel happens to be busy. All three types of block operations are carried out on a character-by-character basis. The input-output instructions, which can also specify a word-byword transfer, are described in more detail under Simultaneous Operations (Section 245: 111). © 1964 Auerbach Corporation and Info, Inc. 11/64 245:051.120 § .. CDC 3200 051. . 12 .12 priate bits in an Interrupt Mask register. In addition, several instructions are available for sensing and clearing interrupts independently, and for either enabling or disabling the entire interrupt system. Description (Contd.) The 3200 has a program interrupt system which peTmits interruption when any of the following conditions occur: arithmetic faults (overflow, divisor too small, exponent too large), completion of a block operation (search, move, or input-output), manual switch operation (console key), an interrupt request from any of the eight peripheral positions on each data channel, or a real-time interrupt controlled by the Real-Time Clock. When an interrupt condition is recognized, the current instruction address is stored along with a number that indicates the specific interrupt condition, and program control is transferred to a fixed location. The programmer, however, can choose to honor or ignore any particular interrupt condition by setting appro- .2 PROCESSING FACILITmS .21 Operations and Operands Operation and Variation .211 Fixed pointAdd-subtract: Multiply Short: Long: DivideNo remainder: Remainder: • 212 Floating pointAdd-subtract: Multiply: Divide: • 213 BooleanAND: Inclusive OR: Exclusive OR: • 214 ComparisonNumbers: Absolute: Letters: Mixed: Collating sequence: Description (Contd. ) A special power failure interrupt automatically (and unequivocally) transfers control to a fixed location (location 00010) in the event power fails within the 3200 system. A special routine then prepares the system for an orderly shutdown so that no data will be lost. The whole operation takes a maximum of 30 milliseconds; 16 milliseconds for detection, and 14 milliseconds for processing the interrupt. .13 Provision First Delivery: . . . . . May, 1964 . Radix automatic binary automatic binary automatic (2) decimal Size 24 bits. 48 bits. 1 through 12 BCD chars. none. automatic binary automatic (1) binary subroutine decimal 24 bits. 48 bits. variable. none. automatic binary automatic (1) binary subroutine decimal 24 bits. 48 bits. variable . automatic (1) binary automatic (1) binary automatic (1) binary 36 & 11 bits. 36 & 11 bits. 36 & 11 bits . automatic nOlie. automatic binary 24 bits. binary 24 bits . automatic. none. automatic. 6-bit characters. 0-9, A-Z, with special characters and unassigned symbols in various places; see Page 245:141. 100. (1) These operations are possible only with 3205 Scientific and 3215 General Processors. (2) This operation is possible only with 3210 Data and 3215 General Processors. 11/64 CENTRAL PROCESSORS § 245:051.215 .216 Radix conversion: 051. Radix conversion between BCD and binary forms is performed by standard subroutines. The timings of these subroutines are listed in Table I. .217 Edit format: . • . . . . . own coding; the characterby-character search for equality or inequality appears to be the only instruction specifically oriented toward this task. .215 Code translation: Code translation from external BCD to internal BCD is automatic when magnetic tapes recorded in ECD format are being used. Details of other code translations needed, and the timings of the subroutines used to accomplish the translations, are shown in Table I. .218 Table look-upOperation Equality: Greater than: Greatest: Least: .219 Others Character Search: Provision Size Comment automatic automatic none. none. by word If by word entries may be spaced every 1, 2, 3, 4, 5, 6, 7, or 8words. Masked operands are allowed. automatic character- the search is made offby-charac- line, using the block ter transfer facilities; single character equality or inequality can be searched for. TABLE I: CONVERSION TIMES FOR STANDARD SUBROUTINES Microseconds Required For Conversion To: Original Operand Type Magnitude Internal BCD (1) Fixed Point Floating Point Binary (2) Binary (3) Column BCD (4) Row BCD (5) Internal BCD < 10 7 - 13/digit 13/digit + 18/operand 5, ODD/card 30,000/card Internal BCD > 10 7 - 23/digit 23/digit + IS/operand 5, ODD/card 30,00O/card Fixed Point Binary < 10 7 22/digit - 18/operand 22/digit + 5,00O/card 22/digit + 30,OOO/card Fixed Point Binary > 10 7 44/digit - 18/operand 22/digit + 5,00O/card 44/digit + 30,OOO/card Floating Point Binary <10 7 22/digit + 28/operand 28/operand - 22/digit + 22/digit + 28/operand + 28/operand + 5,OOO/card 30,000/card Floating Point Binary 7 > - 10 44/digit + 28/operand 28/operand - 44/digit + 22/digit + 28/operand + 28/ operand + 5,OOO/card 30,000/card (1) (2) (3) (4) (5) Note: Internal BCD is used in decimal arithmetic, for card reader input and for printer output. Fixed Point Binary is used for 24 or 48-bit binary arithmetic. Floating Point Binary is used for all floating point operations. Column BCD is used for output via buffered card punch equipment. Row BCD is used for output via unbuffered card punch equipment. "digit" refers to decimal digits in all of the above times. © 1964 Auerbach Corporation and Info, Inc. 11/64 245:051.220 CDC 3200 § 051. • 22 Special Cases of Operands • 221 Negative numbers: •.• one's complement. • 222 Zl:lro: • . . • . • • . . . . • positive zero and negative zero. • 223 Operand size determination: . . . • . • • . normally 24 bits; 48 bits available in double precision and floating point instructions, and variable length of 1-12 decimal digits in BCD operations. • 23 Instruction Formats .231 Instruction structure:. basically I-address. • 232 Instruction layout Part: f a b m Size (bits): 6 1 2 15 • 233 Instruction parts Purpose f: •• a: • . . • . . . . . . b: •••••••••. m: •••••••••• Note: function code. indirect addressing flag. index register designation. operand address. In many cases the indirect addressing flag and the index register designation are used for other purposes. These cases include: • when literals are used instead of operand addresses; • when Search or Move operations are involved; • when the operand address is a register; • when selective jumps based on console keys are involved. In most BCD character operations, indirect addressing is not available, and only one specific index register can be used with a particular instruction. Register file addresses cannot be indexed or indirectly addressed. .234 Basic address structure: • . . . . . . 1 + O. · 235 LiteralsArithmetic: . . • . . . no facility. COmparisons and tests: . . . . . . . . . literals can be compared with index register counts and accumulator contents only; maximum size is 262,145. Incrementing modifiers: . only in the Block Search operation. 11/64 .236 Directly addressed operands Internal storage core storage. type: . . . • . . . 1 character . Minimum size: . 1 or 2 words. Maximum size: • Volume accessible: . all . . 237 Address indexing .2371 Number of methods:. two. .2372 Names: .. . . . . .. normal indexing. specific indexing. • 2373 Indexing rule (normal indexing): . . . addition of contents of one of the 3 index registers to the address in one's complement mode. .2373 Indexing rule (specific indexing): . • . . . • . same as normal indexing except that a specified index register is always used with the particular instruction. .2374 Index specification: . bits 15 and 16, or bit 17, of instruction word. .2375 Number of potential indexers: . . . . . . . 3. .2376 Addresses which can be indexed: . • • . . • operand addresses in arithmetic, logical, load, and store instructions, and some jump instructions. BCD operations (which index by character, not by word) can only be modified within 8,192 words. .2377 Cumulative indexing:. no • • 2378 Combined index and step: . • . . . . • . . no . • 238 Indirect addressing .2381 Recursive: .. yes . . 2382 Designation: • . . . . . single bit in appropriate instructions and in each indirect operand address. .2383 Control: ••.•.•... the last address in the recursive sequence is the first address reached which has no indirect addressing flag • . 2384 Indexing with indirect addressing: index modification always takes place first. All levels of a recursive indirect address sequence may be indexed. .239 Stepping .2391 Specification of increment: . . . within instruction. .2392 Increment sign: • + or-. .2394 End value: •.•. positive zero; tests are also available for comparison with literals. .2395 Combined step and test: . . . . . . . .. yes, for ± 1 increments only. . 24 Special Processor Storage • 241 Category of storage Registers: Registers: Registers: Number of Size in locations bits 3 24 4 57 15 24 Program usage arithmetic and instructions. address handling. I/O control, clock, temporary storage, etc. 245:051.300 CENTRAL PROCESSORS .335 Interruption process Disabling interruption: • . . . . . . . . § 051. .3 SEQUENCE CONTROL FEATURES .31 Instruction Seguencing: . . . . . . . . . . . sequential. . 32 Look-Ahead: . . . . . . . none. . 33 Interruption . 331 Possible causesIn-out units: ..•. operating instruction proceeds to an orderly halt. Registers saved: •• program address register only. A nine-bit interrupt identification code is placed in a fixed location . fixed location. Destination: . . . . . . 00003 or 00010 • .336 Control methodsDetermine cause: •.. own coding. Enable interruption:. own coding. the state of any specific device connected to one of the eight I/o controllers can initiate an interrupt. Conditions which can cause interrupts vary for different types of I/o devices, but usually include normal end of an operation, abnormal end, and inability to respond to an instruction. In-out controllers: .. the failure of an I/O controller to accept or reject a Connect or Function instruction: Processor errors: .. arithmetic overflow. divide fault (division by too small a number; not simply by zero). exponent overflow (> 2 10 _1). BCD fault (irregular characters). other: . . . . . . . . . . power failure. real-time clock. search-move interrupt. . 332 Control by routine: . . . interrupts may be masked by the program. In addition, they are automatically inhibited (except for the Power Failure Interrupt) by the entry into any interrupt routine, and a special instruction must be used to re-enable the preselected interrupts after each interrupt. .333 Operator control: . . . . none, except that he always may originate a manual interrupt, or use the six Sense switches to set the mask. .334 Interruption conditions: . . . . . . . . . . . (1) an interrupt condition must arise. \ '. (2) it must not be inhibited either permanently or during the processing of an interrupt routine. (3) the priority scanner must have reached the priority level of the interrupt condition. • 34 Multiprogramming: • no special provisions • . 35 Multi-Sequencing: .. the block operations (search for character equality/inequality, move characters, input-output instructions) can proceed in parallel with and independently of the main program, once initiated. .4 PROCESSOR SPEEDS .41 Instruction Times in Microseconds Binary (24 bits) BCD (12 char) .411 Fixed point Add-subtract: 2.5 11.5 not available. Multiply: . • . . . 7.8to11 Divide: . . . . . . . . . 11. 25 not available. .412 Floating point Add-subtract: . . . • . 10 to 12. Add-subtract (subroutine): . . . . . . . . 150. Multiply: . . . . . . . • 14 to 18. Multiply (subroutine): 240. Divide: . . • . . . . . • 20. Divide (subroutine): . 425 . .413 Additional allowance for Indexing: . . . . . . . . 0.375 Indirect addressing:. 1. 25 Re-complementing: . 0.0 .414 ControlCompare: . • • . . . . . 1. 9 Branch: . . . • . . • . . 1. 25 Compare and branch: 1. 9 . 415 Counter control Step: . . . . . . . . . . . 1. 25 Step and te st: . . . . • 1. 9 Test: . • . . . . . . • . . 1. 9 .416 Edit: . . . • . • . . . . . • not available. .417 Convert: . . • . . . . . . see Table I. .418 Shift: . • • • . . . . . . . • 1. 25 to 3.75 .42 Processor Performance in Microseconds .421 For random addressesFixed Point BCD Floating Point (24 bits) (12 char) (48 bits) c = a + b: b = a + b: Sum N items: c = ab: 7.5 6.25 2.5N 14.4 c 17.5 = alb: © 1964 Auerbach Corporation and Info, Inc. 27.5 27.5 11. 5N not available not available 18.5 18.5 11. ON 23.5 27.5 11/64 CDC 3200 245:051.422 § 051. .422 For arrays of dataFixed Point BCD Floating Point (24 bits) (12 char) (48 bits) ci = ai +b j : b j = ai + br Sum N items: c = c + aibj: 11. 79 10.16 4.78N 20.81 35.16 37.28 13.78N not available 22.79 22.79 13.28N 38.41 .423 Branch based on comparison Numeric data: . . . . . 15.46 Alphabetic data . . . . 15.46 .5 ERRORS, CHECKS AND ACTION Error Overflow: Underflow: Divisor too small: Shift faults: Invalid instructions: Abnorm al end of an I/O operation: Storage reference: Receipt of data: Internal reject: Dispatch of data: 11/64 .424 SwitchingUnchecked: . . . . . . . 5. 38 Checked: . . . . . . . . 9.18 List search: . . . . . . 14.58 I- 4. 2N .425 Format control, per character Unpack: . . • . . . . . . 120. Compose: . . . . . . . . 120 . . 426 Table look-up, per N comparisons For a match: . . . . . . 4.2 + 4. 2N For least or greatest: 4.2 + 4. 2N For interpolation point: . . . . . . . . . . 4. 2 + 4. 2N .427 Bit indicators Set bit in pattern: ... 7. 5 Test bit in pattern: .. 5.65 .428 Moving, per N words: . 3.3 + 3. 9N (250,000 24-bit words/ sec). Check or Interlock check } parity check Action specific bit is set; optionally, interrupt occurs (interrupt system is deactivated, instruction address is stored, and a forced jump is made to a specific location for each case) . optional halt; console light. parity bits none. are included, but not checked 245:061.100 CDC 3200 Console CONSOLE ( '--. § . 13 061. .1 GENERAL . 11 Identity: .. 3201 Desk Console . . 12 Associated Unit: Input-Output Typewriter is included with the 3201. .13 Description The 3201 Desk Console is standard equipment in all Control Data 3200 computer systems. It includes a movable input keyboard, which can either be operated at the console or removed and carried to a suitable nearby location. An input-output typewriter is also incorporated in the console design. Both the keyboard and the typewriter have direct access to the computational module, and do not use the regular data channels. Octal or decimal displays are used to display the contents of the seven operational registers. The operator sitting at the console has a good view of these displays, and of the equipment itself (see photograph) . The "external" status indicators display the existing condition of the input-output channels, while six columns of "internal" condition indicators provide the following information: o Storage Active - for addressing purposes, the four possible 8, 192-word sections of storage are designated by digits 0-3. Whenever one of these storage sections becomes active, the corresponding indicator light is lit. Description (Contd.) o Conditions - a Standby light indicates that the main power switch is on, but that individual supplies are still off; an Interrupt Disabled light is on whenever the interrupt system is disabled by the program. o Cycle - four cycles are represented: Read Next Instruction, Read Address, Read Operand, and Store Operand. These indicators are lit whenever the cycles are in progress. Faults - these lights represent four arithmetic faults: Arithmetic Overflow, Divide, Exponent Overflow, and Decimal (BCD). o Temperature Warning and Temperature High up to four cabinet sections are represented. The console switches are divided into two groups those used for normal operations of the system and those used primarily for maintenance purposes. Operational switches are included on the main console and on an entry keyboard. The keyboard replaces the Set and Clear pushbuttons that are found on most Control Data computers for the manual entry of information. The main console switches provide for such operating controls as breakpoint/run mode selection, automatic load/dump initiation for a designated device, selective jump instruction keys, manual interrupt, and master clear buttons. The keyboard switches provide for start and stop controls, register display control, and the manual entry of information into core storage or a designated register. © 1 964 Auerbach Corporation and Into, Inc. 11/64 245:071.100 CDC 3200 Input-Output 405 Card Reader INPUT-OUTPUT: 405 CARD READER iii 071. .12 .1 GENERAL .11 Identity: .12 A single card read instruction defines an area in core storage which is to be filled with data read by the card reader. As many cards as are .necessary to fill this area are read in under the supervision of a card reader controller, without further program intervention being necessary. CDC 405 Card Reader. CDC 3248 Card Reader Controller. CDC 3447 Card Reader Controller. CDC 3649 Card Reader Controller. Interruptions can be set to occur when the card reader becomes available, when a card read operation is successfully completed, .or when for some reason a card read operation ends without being successfully completed. The program can inhibit any or all of these three separate and distinct interrupt conditions. Description The Control Data 405 Card Reader is a fast, asynchronous photoelectric reader that operates at 1,200 cards per minute when reading full 80-column cards, and at up to 1,600 cards per minute with 51-column stub cards. The input hopper can hold 4,000 cards. Two output stackers are provided: one main stacker which can hold 4, 000 cards, and a reject stacker which can hold 240 cards. The cards are turned individually as they are being read so that the card deck in the output stacker is in exactly the same order as it was before being read. In addition to the interrupt system, status indicators show: whether the unit is currently able to respond to an instruction; which interrupt conditions are presently activated; whether the card presently being read is a binary card; whether a card jam, empty input hopper, or full output hopper. condition is present; whether a card read error has been noted; and whether the operator has set a switch on the reader indicating that the last card of the card file being read is physically in the card reader. The card read operation proceeds serially, columnby-column. Two separate photoelectric read stations read each column, and the two readings are checked within the card reader before the column image is forwarded to the card reader controller. Conversion from Hollerith to BCD code is normally execqted automatically on all cards which do not have positions 5 and 7 punched in column 1. The conversion can, however, be inhibited by program where desirable. Each card reader must have its own individual card reader controller, so the number of card readers which can be connected to a computer system is related to the number of data channels and the number of selectable positions on each data channel. The theoretical maximum number of card readers that can be connected to a Control Data 3200 computer system is 64. The load on the core storage, for the Control Data 3200 computer system operating in the word mode, is 25 microseconds per card for Hollerith coding and 50 microseconds per card for column binary cards. This loading amounts to 3% of the total throughput capacity of a single 3200 core storage module when Hollerith cards are being read at 1,200 cards per minute. Use of the column binary mode doubles the loading to 6% of a core storage unit's capaCity; and use of character-mode reading (where each character read is placed into a separate word) quadruples the loading to a maximum value of 12%. Any code conversions subsequently required to convert BCD operands into binary operands for computational purposes impose an additional effective load on the central processor. There are three different Card Reader Controllers. The controllers differ in their buffering provisions and in the number of data channels which can be connected to each controller. The available controller models and their characteristics are: Model 3248: unbuffered, one data channel connection. Model 3447: full-card buffer, one data channel connection. Model 3649: full-card buffer, two data channel connections. The Card Punch Controllers intervene between the computer system and the card reader itself. The program facilities available with the Control Data 405 Card Reader do not differ significantly when different controllers are used, except that where the controller can be physically connected to two data channels, it is possible to switch one card reader between two computer systems by connecting the two channels to different systems. 11/64 Description (Contd.) The 405 Card Reader is manufactured by Control Data Corportion. .13 Availability: . . . . . . . 4 months. .14 First Delivery: . . . . . 1963. 245:072.100 CDC 3200 Input-Output Card Punches INPUT-OUTPUT: CARD PUNCHES !l 072. . 12 .1 GENERAL .11 Identity: .12 Description Where the controller does contain a fullcard buffer, the data can be supplied in BCD column-by-column format and automatically "turned around" in the buffer and converted to the row-by-row format required by the card punch without any program supervision. At the same time, automatic conversion from internal BCD to Hollerith coding can occur if desired. . CDC 415 Card Punch. IBM 523 Card Punch. IBM 544 Card Punch. 3245 Card Punch Controller. 3445 Card Punch Controller. 3644 Card Punch Controller. • A Control Data 415 Card Punch can be connected to any Control Data 3000 computer system through a Card Punch Controller. The punch operates at 250 cards per minute and uses a row-by-row punching technique. The punched data is then read at a post-punch read station, which counts the number of holes in the card. Subsequent to the post-punch read station, a card can be offset in the output stacker so that the operator can take any necessary action to remove mispunched cards from the card files. Interruptions can be set to occur when the card punch becomes available, when an operation is successfully completed, or when for some reason an operation ends without being successfully completed. The program can inhibit any or all of these three separate and distinct interrupt conditions. There are three different Card Punch Controllers, anyone of which can control one card punch unit. The controllers differ in their buffering provisions and in the number of data channels which can be connected. The available controller models and their major characteristics are as follows: Model 3245: unbuffered one data channel connection. Model 3446: full-card buffer one data channel connection. Model 3644: full-card buffer two data channel connections. In addition to the interrupt system, status indicators show whether the unit is currently able to respond to an instruction, what interrupt conditions are presently activated, and whether there has been a failure to feed a card. Each card punch must have its own individual controller, so the number of card punches that can be connected to a computer system is related to the number of data channels and the number of selectable positions on each data channel. The Card Punch Controllers intervene between the computer system and the card punch itself. The available program facilities differ depending on which contrQller is used. The differences in program facilities are: • The load on the core storage for the Control Data 3200 computer system is only 25 microseconds per punched card, which at the rated speed of 250 cards per minute is negligible. However, the data to be punched must often be prepared in BCD coding, and then (where an unbuffered controller is used) massaged into row-by-row form, so the actual load on the computer system imposed by card punch operations may be considerably higher. Error checking: Where the controller does not have a full-card buffer, the hole count reported by the post-punch read station cannot be used because no equivalent hole-count of the card image exists; therefore, no comparison between the two counts can be made. Card Punch Coding: Where the controller does not containafull-cardbuffer, the computer must provide the data in exactly the form in which it is to be punched. Switching Between Computer Systems: Where the controller can be physically connected to two data channels, it is possible to switch the card punch unit from one computer system to the other by connecting the two data channels to different computer systems and using either channel as required. Special instructions are available to reserve the punch for one system at a time, to allow for controlled operation. A single card punch instruction defines an area in core storage whose contents are to be punched out. As many cards as are needed to accommodate all of the data in the designated area will be punched in response to the instruction. IBM 523 or 544 Card Punches can be used in place of the Control Data 415 Card Punch. These IBM card punches operate at 100 and 250 cards per minute, respectively, and are functionally equivalent to the Control Data 415 except that they have no provision for offsetting mispunched cards. • Description (Contd.) The 415 Card Punch is manufactured by Control Data Corporation. . 13 Availability: .. .4 months. .14 First Delivery: . December 1964. ©1964 Auerbach Corporation and Info,lnc. 11/64 245:073.100 CDC 3200 Input-Output Paper Tape Reader/Punches INPUT-OUTPUT: PAPER TAPE READER/PUNCHES Ii 073. .121 3691 Paper Tape Reader/Punch (Contd.) .1 GENERAL .11 Identity: . 12 are currently activated, whether the punch tape supply is low, and whether the punch or the reader unit were last connected to the data channel. 3691 Paper Tape Reader/ Punch. 3694 Paper Tape Reader/ Punch. The load on the core storage will depend upon the operating speed of the unit, and on whether one character per word or the packed format is being used. In no case with the Control Data 3200 computer system will the loading exceed 0.05% of a single core storage module's throughput capacity . Description . 121 3691 Paper Tape Reader/Punch The 3691 Paper Tape Reader/Punch is a freestanding unit, which in its normal version is 36 inches high, 28 inches deep, and nearly 48 inches wide. A "ruggedized" version, built to withstand adverse physical conditions, has different dimensions, which are summarized in the Physical Characteristics section of this Computer System Report, on page 245:211.100. .122 3694 Paper Tape Reader/Punch The 3694 Paper Tape Reader/Punch is a freestanding unit, about 60 inches high, 24 inches deep, and 42 inches wide. A large proportion of the total space is taken up by the spooling facilities which are a feature of this unit. Two separate data channels can be connected to the self-contained control mechanism within the 3694 Paper Tape Reader/Punch, so that concurrent paper tape reading and punching can take place. The 3691 contains logically separate reading and punching sub-units and a single data channel connection for their joint use. The single data channel connection makes it impossible to run the reader and the punch concurrently. Spooling facilities are not provided. ThePaper Tape Reader operates at a peak speed of 1,000 characters per second, using standard paper or plastic tape with fully-punched holes. Reading operates photoelectrically, in either the forward or reverse direction. Control Data is currently using a Digitronics Corporation paper tape reader for this unit. The Paper Tape Reader operates at a peak speed of 350 characters per second, in the forward direction only. A Control Data Model 350 photoelectric reader is currently being used. The Paper Tape Punch is supplied by the National Cash Register Corporation, and operates at a rated speed of 110 characters per second. The Paper Tape Punch is suppled by the National Cash Register Company, and operates at a rated speed of 110 characters per second. Five, seven or eight-level paper tape can be used by either unit; a manual switch selection and tape width adjustment are necessary when a different type of paper tape is mounted. Character parity can be optionally used on both reading and punching, under program control. Each tape character can be read into, or punched from, a separate computer word location, or alternatively a packed format can be used. In the packed format, a 24-bit computer word stores either four 5-bit characters or two 7-bit or 8-bit characters. Conversion to or from the appropriate internal code must be accomplished by programming. Five, seven, or eight-level paper tape can be used by either unit; a manual switch selection and tape width adjustment are required when a different type of paper tape is mounted. There are no provisions for automatically checking the parity of the characters on the paper tape itself, and any required checking or preparation of parity-checked characters must be handled by the program. Each tape character can be read into, or punched from, a separate computer word location, or alternatively a number of characters can be packed into a single word. In the packed format, a 24-bit computer word stores either four 5-bit characters or two 7-bit or 8-bit characters. Conversion to or from the appropriate internal code must be accomplished by programming. Interruptions are controlled by the program and can occur when the unit becomes available, when an operation ends successfully, or when for some reason an operation ends without being successfully completed. In addition t01l1e interrupt system, status indicators show whether the unit is ready to respond to an instruction, which of the three interrupt conditions 11/64 Interruptions can be controlled by the program and can occur when the unit becomes available, when an operation ends successfully, or when for some reason an operation ends without being successfully completed. . 13 Availability: . 14 First Delivery . . . . . 6 months . 3691 Paper Tape Reader/Punch: . 3694 Paper Tape Reader/Punch: . . 1963. . July, 1964. 245:081.1 00 CDC 3200 Input-Output 3152 Line Printer INPUT-OUTPUT: 3152 LINE PRINTER !l 081. .12 .1 GENERAL .11 Identity: . . . • . . . . • . 3152 Line Printer. .12 Description Description (Contd.) Interrupts can be set to occur when the printer becomes available, when an operation is successfully completed, or when for some reason an operation ends without being successfully completed. The program can inhibit any or all of these three interrupt conditions. The Control Data 3152 Line Printer operates at up to 150 single-spaced alphanumeric lines per minute. It contains its own control unit, which is connected to a single data channel, and a 120-character line buffer. The 3152 is a drum printer, normally using a 63-character drum, although alternative drums are available. The drum revolution time is 400 milliseconds, and an infinite clutch is used so that asynchronous printing is possible. Paper control is handled either by the program directly, or by a combination of the program and a 6-level format tape. Skipping over non-printed areas takes place at apprOximately 100 line-spaces per second. The effective speed of the 3152 Printer, including allowances for paper advance, is summarized in Table 1. Program facilities include printing with single or double spacing, page ejection, and automatic advancing to the last line of a page. In conjunction with the 132-position, 6-level format loop which is mounted by the operator before printing starts, the program can instruct the paper to be positioned at the line position corresponding to the next punched hole in the specified channel of the format tape. All paper-positioning instructions can take place either before or after printing, as the program directs. In addition to the interrupt system, status indicators show whether the printer is ready to respond to an instruction, which of the three interrupt conditions are currently activated, whether the paper supply is exhausted, or whether the printed form is positioned at the last line of the page. The load imposed on the core storage by the print operation amounts, in the Control Data 3200 computer system, to only 37.5 microseconds per printed line, which is negligible even at the top speed of 150 lines per minute. The data to be printed must be supplied in 6-bit BCD code, packed four characters per word. Preparing the data in this form may require many programmed code conversion operations. These operations will usually form the greater part of the system overhead incurred through a printing operation. The 3152 Printer is manufactured by Control Data Corporation. . 13 Availability: . . . . • . • 4 months. .14 First Delivery: . . . . . June, 1963. TABLE I: EFFECTIVE SPEED OF THE CDC 3152 PRINTER Lines Advanced per Line Printed 1 2 3 Printed Lines per Minute Using AUERBACH Standard Character Set* 5 150 150 150 150 150 6 (1 inch) 12 (2 inches) 18 (3 inches) 24 (4 inches) 30 (5 inches) 150 118 108 100 90 4 * 0-9, A-Z, minus, comma, period, dollar sign. © 1964 Auerbach Corporation and Info, Inc. 11/64 245:082.100 CDC 3200 Input-Output IBM 1403 Printer INPUT-OUTPUT: IBM 1403 PRINTER § 082. . 12 .1 GENERAL .11 Identity: .12 Description Interrupts can be set to occur when the printer becomes available, when an operation is successfully completed, or when for some reason an operation is ended without being successfully completed. The program can inhibit any or all of these three separate and distinct interrupt conditions. . IBM 1403 Printer, Models 2 and 3. CDC Line Printer Controller, Model 3258. In addition to the interrupt system, status indicators show whether the printer is available to respond to an instruction, what interrupt conditions are presently in operation, or whether the paper supply is exhausted. Either Model 2 or Model 3 of the IBM 1403 Printer can be connected to a Control Data 3000 Series computer system by means of a Model 3258 Line Printer Controller. A separate controller is required for each printer which is to be connected to the computer system. Theoretically, up to 64 printers could be connected to a single Control Data 3200 computer system by connecting 8 printers to each of the 8 possible data channels. The IBM 1403 Model 2 operates at a peak speed of 600 lines per minute and uses a horizontal-chain printing mechanism. The 1403 Model 2 is described in detail in the IBM 1401 Computer System Report, on page 401:081.100. The newer Model 3 can operate at 1, 100 alphanumeric lines per minute, using a train of type slugs which move through a horizontal channel. The 1403 Model 3 is described in detail in the IBM 1410 Computer System Report, on page 402:082.100. 11/64 Description (Contd.) The load imposed on the core storage by a printing operation on the Control Data 3200 computer system is only 41. 25 microseconds per printed line, which is negligible. However, the data to be printed must be in 6-bit BCD code and must be packed, four characters per word, into an output area. Preparing the data in this form may involve many programmed code conversion operations. These operations, rather than the transferring of data into the printer controller buffer, will form the greater part of the system overhead incurred through a printing operation. .13 Availability: .14 First Delivery: . Oct. 1964. 245:083.100 CDC 3200 Input-Output 501 and 505 Line Printers INPUT-OUTPUT: 501 AND 505 LINE PRINTERS § .12 083. .1 GENERAL .11 Identity: the line position corresponding to the next hole punched in the specified channel of the format tape. All paper-positioning instructions can take place either before or after printing, as the program directs. 501 Line Printer. 505 Line Printer. 3256 Line Printer Controller. 3659 Line Printer Controller. . 12 Interrupts can be set to occur when the printer becomes available, when an operation is successfully completed, or when for some reason an operation ends without being successfully completed. The program can inhibit any or all of these three separate and distinct interrupt conditions. Description The Control Data 501 and 505 Line Printers operate at up to 1, 000 and 500 single-spaced alphanumeric lines per minute, respectively. Except for their operating speeds, the two units are functionally identical. Each printer contains its own 136-character line buffer and can be connected to the computer system through either the single-channel 3256 Line Printer Controller or the dual-channel 3659 Line Printer Controller. The major advantage of the dual-channel control is that the two channels can be connected to different computer systems, making it possible to switch the printer from one computer system to another. In addition to the interrupt system, status indicators show whether the printer is available to respond to an instruction, which of the three interrupt conditions are currently activated, whether the paper supply is exhausted or the paper torn, or whether the printed form is currently positioned at the last line of the page. Each printer must have its own controller, so the number of printers which can be connected to a computer system is related to the number of data channels and the number of selectable positions on each data channel. There can be 8 data channels on a CDC 3200 computer system and each channel has 8 selectable positions, so the theoretical maximum numbers of printers per system is 64. Physically, the printer is enclosed in a four-foothigh cabinet, similar to those used for peripheral control equipment. The cabinet has semi-translucent front panels, through which the operator can observe the printing operation. The use of the cabinet reduces the noise level during printing. The load on the core storage amounts, in the Control Data 3200 computer system, to only 42. 5 microseconds per printed line, which is negligible even at the top speed of 1,000 printed lines per minute. However, the data to be printed must be in 6-bit BCD code and must be packed, four characters per word, into an output area. Preparing the data in this form may involve many programmed code conversion operations. These operations will usually form the greater part of the system overhead incurred through a printing operation. Both the 501 and the 505 are drum printers, and both normally employ a 63-character drum, although alternative drums are available. The drum revolution time is 60 milliseconds on the 501 and 120 milliseconds on the 505; an asynchronous clutch is used so that printing of a line can be initiated at any time. Paper control is handled by the program, either directly or in conjunction with the 6-level format tape. Skipping over non-printed areas takes place at 150 line-spaces per second. The effective speeds of both printers, including allowances for paper advance, are summarized in Table 1. Program facilities include printing with single or double spacing, page ejection, and an automatic advance to the last line of a page. In conjunction with the 132-position, 6-level format loop which is mounted by the operator before printing starts, the program can instruct the paper to be positioned at Description (Contd. ) The 505 and 501 Printers are manufactured by Control Data Corporation. . 13 . 14 Availability:.. 4 months. First Delivery 501 Printer: 505 Printer: . . © 1964 Auerbach Corporation and Info, Inc. June 1964. Spring 1965. 11/64 245:083.120 CDC 3200 § 083. TABLE I: EFFECTIVE SPEEDS OF CDC 501 AND 505 PRINTERS Printed Lines per Minute Using AUERBACH Standard Character Set* Lines Advanced per Line Printed 501 Printer 1 2 3 4 5 1,000 750 714 667 600 500 500 500 400 375 571 416 333 267 227 375 300 250 215 187 6 (1 inch) 12 (2 inches) 18 (3 inches) 24 (4 inches) 30 (5 inches) 505 Printer * 0-9, A-Z, minus, comma, period, dollar sign. 11/64 245:091.100 CDC 3200 Input-Output 7-Track Magnetic Tape Units INPUT-OUTPUT: 7-TRACK MAGNETIC TAPE UNITS § , \ ',,- 091. .12 .1 GENERAL . 11 Identity: . . .12 Description Description (Contd. ) throughput capacity of a single core storage module, depending directly on the data transfer rate. Control Data 601 through 607 Magnetic Tape Units, and associated Magnetic Tape Controllers. The effective data transfer rates are controlled by the time taken to pass over the inter-block gap and the length of each physical tape block. All Control Data 7-track magnetic tape units use the ruM-compatible three-quarter-inch inter-block gaps, so that their performance when the tape speed is low and short blocks are in use is not as high as that of other magnetic tape units which have otherwise identical specifications but which are able to use shorter inter-block gaps (e.g., the Honeywell 204B Series). The Control Data 600 Series of magnetic tape units includes both 7-track and 9-track equipment. The 7-track tape units use one parity bit and six data bits in each tape row. These units, which are compatible with the IBM 729 Magnetic Tape Units and other equivalent units, are described in this section and summarized in Table 1. The 9-track units, which use eight data bits and one parity bit in each tape row and are compatible with the IBM 2400 Series magnetic tape units used in the IBM System/360, are described in the next section of this Computer System Report, on page 245:092.100. Compatibility between the two groups of units is limited to their mutual use of one-half-inch magnetic tape reels as a recording medium, and to the possible modification of 9-track units so that they can read or write 7-track magnetic tape instead of (gQi as well as) 9track magnetic tape. The Control Data Magnetic Tape Unit Controllers can control a maximum of from 4 to 16 tape units each, depending on which model is selected (see Table II). All the tape units connected to a particular controller must be 7-track units with the same physical tape speed. The peak data transfer rates of the 7 -track magnetic tape units vary from 20,850 to 120,000 characters per second, depending upon which specific unit is in use. The loading on the Control Data 3200 core storage modules during data transmission is one memory cycle (1. 25 microseconds) per 24 data bits, and amounts to between 0.6% and 3. 7% of the total Each controller can handle as many simultaneous data transmissions as it has data channels connected to it. Models are available with one, two, three, or four possible data channel connections. Where there are multiple data channels connected to a single magnetic tape controller, it is not necessary that each data channel be connected to the same Control Data 3000 series computer system. Where there are two computers at a single site, it is common practice to connect a single tape controller to both computer systems. This allows both computers to use any of the magnetic tape units connected to the controller, and eliminates the necessity for special switching devices. TABLE I: CHARACTERISTICS OF THE CDC 7-TRACK MAGNETIC TAPE UNITS Model No. Tape Speed, inches per sec Recording Density, bits per inch Peak Speed, char per sec Interblock Gap Lengths inches msec(l) chars (2) Efficiency, %(3) 100-char 1,000-char blocks blocks Demand on Core Storage, % (4) Rewind Speed, inches per sec 601 37.5 556 200 20,850 0.75 0.75 20.0 20.0 417 150 19% 40% 71% 87% 0.6% 0.2% 200 603 75.0 556 200 41,700 0.75 0.75 10.0 10.0 417 150 19% 40% 71% 87% 1.3% 0.5% 350 604 75.0 800 556 200 60,000 0.75 0.75 0.75 10.0 10.0 10.0 600 417 150 14% 19% 40% 62% 71% 87% 1.9% 1.3% 0.5% 350 606 150.0 556 200 83,400 0.75 0.75 5.0 5.0 417 150 19% 40% 71% 87% 2.6% 0.9% 350 607 150.0 800 556 200 120,000 0.75 0.75 0.75 5.0 5.0 5.0 600 417 150 14% 19% 40% 62% 71% 87% 3.7% 2.6% 0.9% 350 (1) (2) (3) (4) Time in milliseconds to traverse each interblock gap when reading or writing consecutive blocks. Number of character positions occupied by each interblock gap. Effective speed at the indicated block size, expressed as a percentage of peak speed. Percentage of total available CDC 3200 core storage cycles used to service magnetic tape units during data transmissions. @1964 Auerbach Corporation and Info,lnc. 11/64 245:091.120 § CDC 3200 .12 Description (Contd.) The 7-track magnetic tape units can use pure binary or BCD formats and can read backward as well as forward. Writing must always operate in the forward direction. Searching backward or forward to find a file mark, and rewinding with or without automatic unloading of the tape reel, can be handled by the magnetic tape subsystem independently of the computer once the operation has been initiated. Program interruptions can be initiated under three separate conditions: when a tape unit becomes available, when an operation ends normally (i. e., successfully), and when something has prevented an operation from being successfully completed. The program can select which types of interruption it will allow a specific controller to initiate. Different controllers, or different data channels connected to the same controller, can be concurrently using different sets of interrupt conditions. There are 11 status codes which can be tested by the program. These status codes must be used to identify the cause of an interrupt, but they are also available for use whenever required. They indicate whether a tape unit is available or not; whether the tape is positioned at a file mark, at the load point, or at the physical end of the tape; what density is currently being used, whether writing is permitted, and whether data has been lost through timing conflicts or is of dubious value because of the known occurrence of a transverse or longitudinal parity error. Because of the wide capability range of both the magnetic tape units themselves and the associated controllers, the comparative prices of the different components are particularly important. These are listed in the Price Data section of this Computer System Report, which starts on page 245:221.101. . 13 PHYSICAL FORM .2 091. Availability: . 14 Each tape drive is a single unit. The drive past the read, write, and erase heads uses pneumatic capstans. The magnetic tape passes through vacuum reservoirs immediately before and after passing under the heads themselves. The vacuum reservoirs are vertical and can hold about seven feet of tape except on the tape units which operate at 37.5 inches per second; on these units the reservoirs are placed horizontally and have a capacityofaboutthree feet of tape. There are three heads, the erase head followed by the write head and the read head. The gaps between the heads are 0.4375 inches between the erase and write heads, and 0.3 inches between the write and read heads. .3 EXTERNAL STORAGE The Control Data 600 Series magnetic tape units use one-half-inch plastic tape. Normally 2, 400-foot reels are used, but some installations are successfully using 3, 600-foot reels with these tape units. The coding used is exactly the same as that used with the IBM 729 MagnetiC Tape Units. .4 CONTROLLERS All tape units must be connected to a controller. The wide range of available controllers is shown in Table II. PROGRAM FACILITIES AVAILABLE .5 The tape units can read a single block in the forward or reverse direction, or write a block in the forward direction only. The size of the block is determined by the amount of storage specified as the input or output area in the instruction, and is limited only by the amount of core storage available. An end-offile mark can be written and is preceded by a 6-inch gap. Search operations to find the end-of-file mark can be conducted in either direction. A special instruction is available to erase 6 inches of tape, in order to skip over a bad spot on the tape. 6 months . First Delivery Model Model Model Model Model 601 603 604 606 607 January 1965. March 1963. May 1964. August 1962. May 1964. TABLE II: CONTROLLERS FOR CDC 7-TRACK MAGNETIC TAPE UNITS Controller Model 3127 No. of Cbannels Max. No. of Tapes 1 4 Acceptable Tape Unit Models' 601 3228 1 4 604 or 607 3229 1 8 604 or 607 3421 2 4 604 or 607 3422 2 6 604 or 607 3423 2 8 604 or 607 3622 2 16 606 or 607 3625 3 8 606 or 607 3626 3 16 606 or 607 3623 4 8 606 or 607 3624 4 16 606 or 607 • Tape lUlits with different tape transport speeds must not be connected to the same magnetic tape controller. 11/64 INPUT -OUTPUT: 7-TRACK MAGNETIC TAPE UNITS § 091. .5 245:091.500 .7 PROGRAM FACILITIES AVAILABLE (Contd.) Single button controls are used to bring the mounted tape to the load point and to prepare a tape reel for dismounting. Loading and unloading a reel of tape takes approximately one minute, and the tape unit must be stopped while this is done. The program can select either binary or BCD codes, and can request interrupts to occur when a tape unit becomes available, when an operation is completed normally, or when an operation is completed in some abnormal manner. The current status of a tape unit can be tested at any time. Special status indicators show: whether the unit is available or not; whether the tape is positioned at a file mark, at the load point, or whether it is approaching the physical end of the tape; what density is currently being used; and whether the tape reel presently mounted can be written on. Error status indicators show whether any data has been lost through timing conflicts or whether any parity errors have been found. .6 PERFORMANCE The major performance characteristics of the Control Data 600 Series of magnetic tape units (7 -track) are summarized in Table 1. The effective speed of any particular tape unit at any particular block size can be calculated by using the formula "Effective speed = Peak speed x Block length in chars/ (Block length + Interblock gap length in chars)." The required values are included in Table 1. Alternatively, the effective speeds can be read from the graphs at the end of this section. .7 EXTERNAL FACIIJTIES The unit number is displayed on a dial at the top of the unit. There are ten positions, eight of which are marked 1 through 8 and two marked "stand-by." EXTERNAL FACIIJTIES (Contd.) The peak frequency of reloading is directly related to the tape transport speed, and is once every 13, 6.5, or 3.25 minutes for units with tape speeds of 37.5, 75, and 150 inches per second, respectively. .8 ERRORS, CHECKS AND ACTION Errors which result in the failure of parity checks cause an indicator to be set and (at the option of the programmer) an interrupt. Such errors may be noted either during the automatic read-back operation, which occurs while writing is in progress, or during normal reading. Two parity checks are made, one on each 6-bit data character transferred and one on the longitudinal parity character at the end of each physical tape block. Errors which arise from timing conflicts and which lead to a loss of data are similarly handled, by setting an indicator and providing for an optional interrupt. Checks are made for the approaching end of the tape, and for a match between the actual length of an incoming tape block and the input area set aside to receive the block. Interrupt and indicator actions are available to notify the program of the result of these checks. No explicit check is made upon the adequacy of the plastic tape itself; reliance is placed upon the parity checks on the data recorded on the tape. @1 964 Auerbach Corporation and Info, Inc. 11/64 245:091.901 § CDC 3200 091. EFFECTIVE SPEED: CDC 601, 603 AND 606 MAGNETIC TAPE UNITS (Recording density: 556 char/inch) 1,000,000 7 4 2 100,000 60 G 7 4 .J' V /V Effective Speed, char/sec. 2 V 7 1,000 /' 7 V / / / 7 ~ i..;' 1..-"" i-'" ~ ~ ...."" /' 17 / '" "" 7 4 2 / ~ 10,000 V .... ;~ V ~ 7 7 4 2 100 2 10 4 7 2 100 4 7 2 1,000 Characters Per Block 11/64 4 7 10,000 INPUT-OUTPUT: 7-TRACK MAGNETIC TAPE UNITS 245:091.902 § 091. EFFECTIVE SPEED: CDC 604 AND 607 MAGNETIC TAPE UNITS (Recording density: 800 char/inch) 1,000,000 7 4 2 100,000 I)\)1 ." 7 i"" / / V 2 Effective Speed, char/sec. I' / 10,000 7 ~~ /' 7 ./ 1,000 ./ 7 4 2 I)~ r- .J" 4 ,/ IL / 1/ 7 4 2 100 2 10 4 7 2 100 4 7 2 1,000 4 7 10,000 Characters Per Block ©1964 Auerbach Corporation ond Info, Inc. 11/64 245:092.100 CDC 3200 Input-Output 9-Track Magnetic Tape Units INPUT-OUTPUT: 9-TRACK MAGNETIC TAPE UNITS § 092. .1 GENERAL . 11 Identity: . .12 .12 BCD or 4-bit packed decimal codes used in the IBM System/360. Control Data Magnetic Tape Units, Models 692, 694, 696, and associated controllers. Description Control Data has announced a series of 9-track magnetic tape units which are to be compatible with the new IBM 2400 Series tape units. The IBM 2400 Series units are described in the IBM System/360 Computer System Report, on page 420:091. 100; their major innovations are the use of eight data bits and one parity bit in each tape row, and the addition of a cyclic (or diagonal) check character to each tape block. The peak speeds of the Control Data 692, 694, and 696 tape units are 30, 000, 60,000, and 90,000 eightbit bytes per second, respectively. These speeds are functionally equivalent to 40,000, 80,000, and 120, 000 six-bit characters per second, respectively, unless the data is recorded in the 8-bit Extended 11/64 Description (Contd.) Models 3825, 3826, and 3827 controllers have been announced for the 692, 694, and 696 tape units. The ratio of data channel connections to magnetic tape unit connections is unusually high, one data channel being provided for every two magnetic tape units which can be connected. Preliminary indications are that it will be possible to connect any of the three 9-track tape unit models to any of the three controller models. The number of magnetic tape units and data channels that can be connected to each controller model are as follows: Controller Model; Magnetic Tape Units: Data Channels: 3825 3826 3827 4 2 6 3 8 4 Delivery dates of the 692, 694, and 696 magnetic tape units have not been specifically announced by Control Data, but first deliveries are expected to take place as soon as IBM delivers its 2400 Series tape units. 245: 101.1 00 CDC 3200 Input-Output Satellite Coupler INPUT-OUTPUT: SATELLITE COUPLER § 101. .12 .1 GENERAL .11 Identity: . . . . . . . . . . 3682 Satellite Coupler. 3681 Data Channel Converter. . 12 Description The 3682 Satellite Coupler is used to allow a computer system to communicate directly with another, physically adjacent system. The basic technique involved is that an input-output channel is used, and request and control signals from computer system A to computer system B are received in the same way as the equivalent status signals from any input-output unit. When the appropriate signals have passed, an input-output instruction will transfer data directly from one computer to the other computer memory at a speed limited only by the memory cycle timing of the slower computer. Description (Contd.) • Two 3200 systems together; I!I A 3200 system to a larger system (Control Data 3600 or 6600); • Several like or unlike systems, to form a "ring" of interconnected computer systems. (System "A" could be connected to system "B" and "Z"; system "B" to system "C" and "A", etc.). The programming systems required for the control of all but the simplest cases of these multicomputer configurations may well be complex. In general, their design is the responsibility of the installation itself, since at the present time it is unusual to find two installations with the same needs. If one of the interconnected computer systems is the This arrangement will usually be used to connect a large computer to a smaller one. Three examples of such connections are illustrated below. The Control Data 3400 could utilize a Satellite Coupler to connect: • A 3200 to a smaller system (Control Data 160-A or 3100); ~_D_A_T_A ~_~_!_N_N_E_L ~I-E~------~~~I~__ __ __ Control Data 160-A, a 3681 Data Channel Converter is required in addition to the 3682. The differentiation between the 3681 and 3682 is that the 3681 simulates the appropriate 3000 series data channel, while the 3682 (which is made up of two identical elements acting as buffers between the two systems) buffers and controls the data transmissions themselves. C_o_t_;_8L_2_ER ___ ~I~~------~;~~_D_AT_A_~_lHA_06_NN_E_L~ __ __ Fig. 1: Coupling of a Control Data 3200 system to a 3100 system. 3206 DATA CHANNEL -,.,. ,... I I 3682 COUPLER I ,.,. I- .... 3606 DATA CHANNEL Fig. 2: Coupling of a Control Data 3200 system to a 3600 system. 3206 DATA CHANNEL 3682 COUPLER 3681 CONVERTER 160-A COMPUTER Fig. 3: Coupling of a Control Data 3200 system to a 160-A system. ©1964 Auerbach Corporation and Info, Inc. 11/64 245; 102.100 CDC 3200 Input-Output 3293 Incremental Plotter INPUT -OUTPUT: 3293 INCREMENTAL PLOTTER . 12 § 102. .1 GENERAL .11 Identity: .12 Description (Contd.) from the computer direct pen carriage movement and drum rotation as well as the movement of the pen against or away from the recording surface. . Control Data 3293 Incremental Plotter. Calcomp Digital Incremental Plotters, Models 563, 564, 565, and 566. The pen carriage moves in the X axis (horizontally), and the drum moves in the Y axis (vertically). The two movements are independent, so that it is possible to instruct movements in both directions to take place at the same time, resulting in slant movements. Description The Control Data 3293 Incremental Plotter incorporates anyone of the Models 563 through 566 Digital Incremental Plotters manufactured by California Computer Products, Inc. These plotters vary in speed (from 12, 000 to 18, 000 steps per minute), in step size (0.01 or 0.005 inch), and in chart width (from 12 to 31 inches). The details of each specific model are shown in Table 1. (For general 'information about the characteristics and applications of digital plotters, see the Special Report on page 23:070.100.) Interrupts can be set to occur when the plotter becomes available, when an operation is successfully completed, or when for some reason an operation is ended although not successfully completed. The program can inhibit any or all of these three separate interrupt conditions. In addition to the interrupt system, six indicators are used to record the present status of the plotter. These indicators show which of the three interrupt conditions are active, whether the plotter is busy, or whether some manual adjustment is in progress. The possible manual processes include high-speed vertical and horizontal paper movement for initially setting the paper and the pen in the proper relative positions. The Calcomp plotters are two-axis recorders for plotting one variable against another. Each plotter consists of a ballpoint pen mounted on a carriage and a bidirectional recording drum. Output words TABLE I: CHARACTERISTICS OF CALCOMP PLOTTERS USED WITH CDC 3293 Calcomp Model No. Model 563 31. 0 Chart width, inches 29.5 Plotting width, inches 120.0 Chart length, feet Step size, inches 0.01 Steps per minute 12,000 Milliseconds per pen movement 90.0 11/64 Model 564 Model 565 Model 566 31. 0 29.5 120.0 0.005 18,000 12.0 11.0 120.0 0.01 18,000 12.0 11.0 120.0 0.005 18,000 90.0 90.0 90.0 245: 111.1 00 CDC 3200 Simultaneous Operations SIMULTANEOUS OPERATIONS § 1. 111. .1 GENERAL After the starting and ending addresses for the transfer are stored in reserved locations of the processor's fast register file, the main program is rcleased [rom further control of the input-output operation. For each transfer, the Communication Channel issues a data transfer request to both the input-output equipment and the priority controls of the register file. The character or word address is then delivered from the register file to the core storage address control, and the data transfer is made between storage and the data channel. The starting address is incremented and the entire transfer sequence repeated until the operation is complete, as evidenced by the starting address becoming equal to the ending address. An automatic interrupt can be specified to notify the program immediately upon completion of the transfer. The Control Data 3200 system allows for the connection of up to eight input-output data channels. Each data channel is serviced by a bi-directional, 12-bit parallel interface unit called the 3206 Standard Communication Channel t. Up to eight different peripheral equipment controllers can be connected to one 3206. These facilities make it possible for up to eight input-output operations on any of 64 different controllers to proceed simultaneously with computation. A choice of single- and dual-channel controllers is available for the card and printer equipment. Full line buffers are included with each of the printer controllers, but card buffers are optional depending upon the choice of card reader or card punch controller. The magnetic tape units, paper tape units, and typewriter simply have 12-bit interfaces. Each four-character word transferred uses one core memory cycle (1. 25 microseconds) during its accession or storage, and a further three Register File cycles (0.5 microseconds) are used to control the transfer operation. During these operations the central processor is unable to gain access to the core storage module involved, or to the Register File, so computation is delayed. The probable delaying effect which input-output operations will have on processing can be calculated using the core storage utilization figures which are listed for all the standard peripheral units in Table I. Where two or more core storage modules are incorporated into a single computer system, it may be possible to reduce such processor delays by overlapping storage references. Magnetic tape controllers can be selected from among 8 different units that provide from 1 to 4 channel accesses, and which are capable of controlling from 1 to 16 tape transports. Thus, if enough data channels are available, from one to four tapes on each controller can be operational in any combination, in addition to non-magnetic-tape peripherals and the processor. The so-called "block" operations (Search and Move) can also occur in parallel with the main computational process, once they have been initiated. The Search instruction initiates a search through a block of character storage addresses looking for equality or inequality with a character contained in the instruction word. The Move order is used to move a block of n characters from one area of storage to another. It should be noted, however, that no real advantage results from this feature if the program requires access to the same storage module as that involved in the block operation. As a result, careful program design is required to realize the potential benefits of these overlapped internal operations. The input-output operations are of two types: character-block transfers and word-block transfers. Character operations permit either 6 or 12 bits to be transferred in parallel between core storage and the peripheral channel, while word operations allow 24-bit transfers. Each inputoutput transfer is initiated after a series of instructions which connect the desired channel, test for "busy" or other status conditions in the input-output equipment, and select the desired function. The input-output transfer instruction (a two-word instruction) is then issued to start the transfer. t A 24-bit interface unit (the 3207 Special Comunication Channel) can be used in place of two 3206 units. GENERAL (Contd.) .2 RULES -The following processes can take place simultaneously: o One computation; plus o One "block" operation (Search or Move); plus o A console key-in operation; plus o As many buffered input-output operations* as there are buffers (up to about 50); plus o As many non-buffered input-output operations** as there are data channels (a maximum of 8 channels); plus * The present printers are always buffered; card equipment is optionally buffered. ** Paper tape, magnetic tape, and random access drum and disk operations are non-buffered; the number of such operations may also be restricted by the manner in which the controllers are connected to the data channels. @1964 Auerbach Corporation and Info, Inc. 11/64 CDC 3200 245: 111.1 01 § 111. .2 RULES (Contd.) .2 RULES (Contd.) • ** * The number of concurrent input-output operations may also be limited by maximum throughput capacity of the computer system, which is 2,666,666 characters per second. As many "non-supervised" peripheral operations*** as there are appropriate units. Magnetic tape rewinding, backspace operations, and searching for file marks, disk arm positioning and address search operations are typical "nonsupervised" peripheral operations. TABLE I: SIMULTANEOUS OPERATIONS Start Time Cycle Time, DEVICE Time. msea. msee. Core Use Data Transmission Time, Channel Use msec. Core Us. Stop Time Channel Use Time, msec. Core Use Channel Use 828. 838 Disk Files --- 250 av 0.0 1 msec Var 2.10r 3.4% Yes 0.0 --- 1311 Disk Storage Drive --- 170 or 270 av 0.0 1 msec Var 2.4% Yes 0.0 --- --- 2311 Disk Storage Drive --- 97.5 av 0.0 1 msec Var 6.4% Yes 0.0 --- 1 msec ------- 3235 Drum Storage 34.4 17.2 av 0.0 861 Drum Storage 34.4 17.2 av 0.0 862 Drum Storage 17.2 8.6 av 50.0 lB.O 50.0 42.0 240.0 240.0 405 Card Reader 1,200 cpm, unbuffered 405 Card Reader 1,200 cpm, buffered --- --- Var 5.0% Yes 0.0 ? Var (62/1)% Yes 0.0 0.0 ? Var (s2/I)% Yes 0.0 0.0 Yes 32.0 3.0% Yes 0.0 --- 0.0 Yes B.O 12.5% Yes 0.0 --- ----- 4B.0 0.0 Yes 190.0 1.1% Yes 2.0 0.0 No 4B.0 4.4% 2.2 msee 190.0 0.0% No 2.0 0.0 No SOO.O B4.0 0.0 Yes 514.0 0.4% Yes 2.0 0.0 No 600.0 B4.0 2.8% 2.2 msec 514.0 0.0% No 2.0 0.0 No ----- --- 415 Card Punch 250 cpm, unbuffered 415 Card Punch 250 cpm, buffered 523 Card Punch 100 cpm, unbuffered 523 Card Punch 100 cpm, buffered 544 Card Punch 250 cpm, unbuffered 544 Card Punch 250 cpm, buffered 48.0 0.0 Yeo 190.0 1.1% Yes 2.0 0.0 No 240.0 48.0 4.4% 2.2 mscc 190.0 0.0% No 2.0 0.0 No 3691 Paper Tape Reader 350 cps 2.9 ? ? 0.0 Yes 2.9 <0.05 Yes 2.0 0.0 No 3691 Paper Tape Punch 110 cps 0.0 Yes 9.0 <0.02 Yes 3.0 0.0 No 9.0 ? 3694 Paper Tape Reader 1,000 cps 1.0 ? 0.0 Yes 1.0 <0.2% Yes O. B 0.0 No 3694 Paper Tape Punch 110 cps 9.0 ? 0.0 Yes 9.0 <0.02% Yes 3.0 0.0 No 3152 Line Printer 150 lpm 400 + 9.7LS 0 --- --- 375 <0.01% O.lmsec 25 + 9.7LS 1403 Model 2 Printer SOO lpm 100 + 5LS 0 --- --- 80 <0.1% 1403 Model 3 Printer l,100lpm 55 + 5LS 0 --- --- 35 0.0 No O.lmsec 20 + 5LS 0.0 No <0.2% O.lmsec 20 + 5LS 0.0 No 60 + S.7LS 0 --- --- 45 <0.1% O.lmsec 13 + S.7LS 0.0 No 120 + 6.7LS 0 --- --- 105 <0.05% 0.1 msec 13 + 6.7LS 0.0 No 601 Magnetic Tape Unit 20.8 KC --- 3.0 0.0 Yes Var 0.6 Yes 3.0 0.0 No 603 Magnetic Tape Unit 41. 7 KC --- 2.75 0.0 Yos Var 1.3% Yes 2.25 0.0 No 604 Magnetic Tape Unit SO.O KC --- 2.75 0.0 Yes Var 1.9 Yes 2.25 0:0 No SOS MagnetiC Tape Unit 83.4 KC --- 2.75 0.0 Yes Var 2. S Yes 1.75 0.0 No 607 Magnetic Tape Unit 120 KC --- 2.75 0.0 Yes Var 3.75% Yes 1. 75 0.0 No ? 0.0 Yes Var 1.25% Yes ? 0.0 No ? 0.0 Yes Var 2.5% Yes ? 0.0 No 696 Magnetic Tape Unit ------- ? 0.0 Yes Var 3.75% Yes ? 0.0 No 3692 Program Controlled Input-Output Typewriter 67 0 --- --- Var <0.001 Yes 0 --- --- 3293 Incremental Plotter 3.3 or 5.0 100 0.0 No No <0.05 No 100 0.0 No 501 Printer 1,000 lpm . 505 Printer 500lpm 692 Magnetic Tape Unit 30 KC 694 Magnetic Tape Unit av b I LS Var. 11/64 240.0 Average time - see main report section on thil! device for details. For the word mode; if character mode is used, the core usage should be quadrupled. Interlace factor (can be I, 2, 4, 8, 16, or 32). Number of lines skipped between successive printed lines Data transmission time varies With record length. 245: 121.1 00 CDC 3200 Instruction List INSTRUCTION LIST !I 121 . FORMAT .1 The instruction format in the 3200 is varied in that, generally, internal instructions require one word of storage, while input/output instructions 23 18 17 consist of two words. Figure I presents the format of an internal instruction: 16 o 15 14 b m. y. k. or unused Figure 1. Format of Internal Instructions f: Operation Code - 6 bits: specifies the operation to be performed. f: Operation Code - 6 bits: specifies the type of 1/0 to be performed. d: Auxiliary Operation Code-l bit: its function varies depending upon the type of instruction being executed. It is used to denote such operations as indirect addressing. variations in shift instructions. and in some cases, combines with f to form a 7 bit code. d: Interrupt Designator- 1 bit: specifies whether or not interrupt is to occur upon completion of the operation. b: Index Designator-2 bits: specifies one of three index registers. the contents of which are used to modify the execution address portion of instructions. m.y.k: Execution Address-IS bits: specifies the address of an operand (m). an operand IV). or a shift count (k). Usually input/output instructions consist of two words in the format shown in Figure 2. 23 18 I x 23 21 20 18 17 16 0 Id n Ie m 17 16 I x: Communication Channel Designator-3 bits: specifies which of the eight possible channels is to be used. t: Format Definer- 3 bits: is subdivided into g. h. and i. g: Choice of BCD conversion or no conversion h: Choice of storing in a forward or backward direction i: Choice of 12 to 24 bit assembly or no assembly e: Mode-l bit: specifies input (output) to (from) storage ?r the accumulator. m: Beginning Address-17 bits: specifies the source (destination) of the first word of a data block. n: Terminal Address-17 bits: specifies the source (destination) 1 of the last word of a data block. If backward storage is being used. n is the source (destination) -1 and is smaller than m. + 0 Figure 2. Format of Input/Output Instructions. Reproduced from Control Data 3200 Computer System Information Manual. @1964 Auerbach Corporation and Info,lnc. 4/64 245: 121. 200 CDC 3200 § 121. 2. INSTRUCTION LIST FUNCTION STOP ANO JUMPS Unconditional Halt Selective Jump Return Jump Unconditional Jump Index Jump. Incremental Index Jump, Decremental Compare A with Zero, Jump Compare A with Q, Jump Compare {within limits test) SKIPS Skip if A ~ y Skip if D ~ V Skip if Ind,x ~ y Skip if A ~ V Skip if D ~ V Skip if Ind,x ~ y Index Skip. Incremental Index Skip. Decremental Stmage Shift MNEMONIC COOE HLT SJX. X~ 1-6 RTJ WP IJI IJD AZJ ADJ CPR 000 m ,ASE DSE ISE ASG DSG ISG lSI ISD SSH 046 V 047 V 04(1-3) V 056 Y 057 y 05(1-3) V 100 b V 10 I b V 1000 m 00im.i~I-6 007 m 01 db m 020 b m 021 b m 030 b m 031 b m 52 d b m LDA LCA LOD LDI STA STD S11 SWA SHA SHD ENR INR IRT ADA RAO SBA MUA OVA AddtoAO COOE DfAD DfSB DfMU DfDV 60 61 62 63 logical Product. AIm ANA AND ANI XOA XOI LDL SSA SCA LPA 17 6 y 17 7'V 17(1-3) V 166 Y 16(1-31 V 27 d b m 35 d b m 36 d b m 37 d b m CHARACTER Character Address to A Load A. Character Load Q, Character Store A. Character Store Character Store Character Address from A ECHA LACH LDCH SACH SDCH SCHA 11 d V 22 d m 23 d m 42 d m 43 d m 46 d b m Subtract from AO Multiply AD Divid, AD LOGICAL logical Product. A/y logical Product. Q/y Logical Product.lndex/y LOAD LCAD STAD SHAD SCAD ELD EUA EAQ DEL AEU AQE ADAD SBAD MUAQ DVAD Exclusive Or. Index/y Load A logical Selectively Set A Selectively Complement A n. 20 d b m 24d b m 21 db m 54 d b m 40 d b m 41 db m 47 db m 44d b m 120 b k 12 I b k 14 d b V 15 d b V 53 d 30 d b m 34 d b m 31 db m 50 d b m 51 db m 4B-BIT FIXEO POINT ARITHMETIC Load AD load Complement AD StoreAO ShiftAQ Seal' AD E (lower) to Q E(upper) to A Eto AD D to E(lower) A to E lupper) AD to E Add to AD Subtract from AD MultiplV AO Divide AD MNEMONIC Exclusive Or. A/y 24-B1T FIXEO POINT ARITHMETIC Load A load Complement A Load D Load Ind,x Store A Store Q Store Index Store Word Address Shift A ShiftQ Enter R* Increase R* Inter-Register Transfer Add to A R,place Add Subtract from A MultiplVA Divide A FUNCTION 48-BIT FLOATING POINT 25 d b m 26 d b m 45 d b m 130 b k 131 b k 55 1 552 553 555 556 557 32 d b m 33 d b m 56 d b m 57 db m db m db m db m dbm DECIMAL ARITHMETIC LoadE LOE StoreE STE Add to E ADE Subtract from E SBE Shift E SfE Jump if E ~ 0 EZJ Jump if E ~1~ D_A_T_A_~_6HA_06_N_N_E_L ~ __ __ __ Fig. 2: Coupling of a Control Data 3400 system to a 3600 system. 3406 DATA CHANNEL 3682 COUPLER 3681 CONVERTER 160-A COMPUTER Fig. 3: Coupling of a Control Data 3400 system to a 160-A system. @1964 Auerbach Corporation and Info,lnc. 5/64 246: 111.1 00 CDC 3400 Simultaneous Operations SIMULTANEOUS OPERATIONS /il111. .1 GENERAL The Control Data 3400 system allows for the connection of up to four inputoutput data channels. Each data channel is serviced by a bi-directional, 12-bit parallel interface unit called the 3406 Standard Input/Output Channel. * Up to eight different peripheral equipment controllers can be connected to one 3406. These facilities make it possible for up to four input-output operations on any of 32 different controllers to proceed simultaneously with computation. A choice of single- and dual-channel controllers is available for the card and printer equipment. Full line buffers are included with each of the printer controllers, but card buffers are optional depending upon the choice of card reader or card punch controller. The magnetic tape units, paper tape units, and typewriter simply have 12-bit interfaces. Magnetic tape controllers can be selected from among 10 different units that provide from 1 to 4 channel accesses, and which are capable of controlling from 1 to 16 tape transports. Thus, if enough data channels are available, from one to four tapes on each controller can be operational in any combination, in addition to non-magnetic-tape peripherals and the processor. All Disk File controllers are dual-channel devices that permit any two of the three disc operations of reading, writing, or positioning to be overlapped with other operations. The input-output operations allow 12-, 24-, or 4S-bit transfers. ** Each input-output transfer is initiated after a series of instructions which connect the desired channel, test for "busy" or other status conditions in the input-output equipment, and select the desired function. The input-output transfer instruction (a full 4S-bit word instruction) is then issued to start the transfer. Mter the starting address and word count for the transfer are fetched from memory and stored in special registers in the input-output channel, the main program is released from further control of the input-output operation. For each transfer, the 3406 Communication Channel issues a data transfer request to the input-output equipment, and the data transfer is made between storage and the data channel. The starting address is incremented, the word count is decremented, and the entire transfer sequence is repeated until the transfer count becomes equal to zero. An automatic interrupt can be specified to notify the program immediately upon completion of the transfer. The delay to the program caused by the core storage accesses required by any particular input-output unit is 1. 5 microseconds per 12-bit byte. The percentage of core storage time required by individual peripheral operations is listed in the table below: * ** For special applications, either a 24-bit (Model 3407) or 4S-bit (Model 340S) data channel can be used, but at least one channel must be reserved for the standard 3406 12-bit unit. 24-bit transfers are only possible with a 3407 channel, and 4S-bit transfers with a 340S channel. © 1964 Auerbach Corporation and Info, Inc. 5/64 CDC 3400 246: 111.1 01 § 111. .1 GENERAL (Contd. ) Peripheral Operation Transfer of 12-bit Bytes 607 Tape Unit 120, 000 char/sec: 83,400 char/sec: 30, 000 char/ sec: 8.9% 6.2% 2.3% 604 Tape Unit 60,000 char/sec: 41, 667 char/sec: 15,000 char/sec: Line Printer, 1000 1pm: Line Printer, 300 1pm: Card Reader, 1,200 cpm: Card Punch, 250 cpm: Paper Tape Reader or Punch: 4.5% 3.1% 1.1% 0.2% 0.04% 0.1% 0.03% 0.06% Core Storage Demands (%) .2 RULES The following processes can take place simultaneously: One computation; plus As many buffered input-output operations* as there are buffers (up to about 50); plus o As many non-buffered input-output operations** as there are data channels (a maximum of 4 channels); plus o As many "non-supervised" peripheral operations*** as there are appropriate units. * The present printers are always buffered; card equipment is optionally buffered. ** Paper tape, magnetic tape, and random access disc operations are non-buffered; the number of such operations may also be restricted by the manner in which the controllers are connected to the data channels. *** Magnetic tape rewinding and Search File Mark are the only presently defined "nonsupervised" operations. 5/64 246: 121.1 00 CDC 3400 I nstructi on li st INSTRUCTION LIST § 121. SYMBOLS k = K= m= M= y = y = Address portion of instruction k + (Bb), Modified shift count Address portion of instruction m + (Bb), Modified operand address Address portion of instruction y + (Bb), Modified operand * = 48-bit instruction b = Designator for index register = Designator for 22, 23, 75, 76 , = Complemented = Restrict () = Contents of = Next instruction NI + = Floating point option FULL WORD DATA TRANSMISSION LDA LAC STA LDQ LQC STQ 12 13 20 16 17 21 Load Load Store Load Load Store A A complement A Q Q comp lement Q instruction to upper PARTIAL WORD DATA TRANSMISSION * LDC 63 Load character (ByteO_7)-A05_00 (M)-A (M)...!.....-A (A)-M (M)-Q (M)....!....-Q (Q)-M (63 b v0006 50 0 m) * STC 63 Store character (A05-00)-ByteO_7 (63 b v0006 50 5 m) SAU 60 Substitute address upper (A14_00)-MUA SAL 61 Substitute address lower (A 14-00)-MLA INTER - REGISTER TRANSMISSION INDEXING IAQ 00 Interchange A and Q (A)-Q, (Q)-A (00 7 00554) ATI 00 Transmit A to index (A14_00)-Bb (00 7 40S4b) SHIFTING ARS QRS LRS ALS QLS LLS 01 02 03 05 06 07 Shift Shift Shift Sh ift Shift Shift (A) right by K (Q) right by K (AQ) right by K (A) laft by K (Q) left by K (AQ) left by K ENI 50 INI 51 L1U 52 L1L 53 SIU 56 SIL 57 ISK # 54 Enter index y_Bb Increase index y + (Bb)-Bb Load index upper (mUA)-Bb Load index lower (mLA)-Bb Store index upper (Bb) • mUA Store index lower (Bb) mLA Index skip: (Bb) l' y: (Bb) + 1-Bb, continue (Bb) =y: O-Bb, skip lower ins truct i on IJ P 55 Index jump: (Bb) l' 0: (Bb) - 1-Bb, jump to m (Bb) = 0: continue ARITHMETIC FLOATING POINT FIXED POINT ADD SUB MUI DVI RAD RSB RAO RSO SCA SCQ 14 15 24 25 70 71 72 73 34 35 Add to A (A) + (M)---A + Subtract from A (A) - (M)-A + Multiply integer (M) (A)-QA + Divide integer (QA) / (M)-A, rem Q + Replace add [(M) + (A))-M & A Replace subtract [(M) - (A)l-M & A Replace add one [(M) + l l - M & A Repiace sub. one [(M) - l l - M & A Scale A Shift (A) left unti I A47 l' A46 or k = 0; Scale AQ Shift (AQ) left until A47 l' A46 or k =0; FAD FSB FMU FDV 30 31 32 33 Floating Floating Floating Floating add. sub. melt. div. [(A) + (M)l-A [(A) - (M)l-A (A) (M)-A (A)/(M)-A (k - no. of shifts)-Bb (k - no. of shifts)-Bb Reproduced from Control Data 3400 Preliminary Reference Manual, Appendix D. © I 964 Auerbach Corporation and Info,lnc. 5/64 CDC 3400 246: 121.1 01 § 121. INPUT /OUTPUT LOGICAL SST 40 Selective set Set (An) to 1 for (Mn) = 1 SCL 41 Selective clear Clear (An) to 0 for (Mn) 1 SCM 42 Selecti ve complement Complement (An) for (Mn) 1 SSU 43 Selective substitute (Mn)-An for (Qn) = 1 L LDL 44 Load Logical [(A) + L ADL 45 Add logical [(A) - L SBL 46 Sub. logical L STL 47 Store logical * CONN 74.0 Connect * * = * * * * = 74.1 74.2 74.3 74.4 74.5 74.6 EXTF BEGR BEGW COpy CLCH CCWD Function Read Write Copy status Clear channel Change control word (Q)(M)-A (A) (M)]-A (Q) (M)l-A (Q)(A)-M GENERAL NO MEMORY REFERENCE ENQ 04 ENA 10 INA 11 Enter Q Extend sign Y, Y-Q Enter A Extend sign Y, V-A Increase A Extend sign Y, Y + (A)-A EUB 77.5 Enter upper bound ELB 77.6 Enter lower bound INF AUG CIS SEN CPR 77.0 77.1 77.2 77.3 77.4 Internal function Augment Copy interrupt status Internal sense Copy product regi ster MEMORY TEST SSK# SSH# EQS# THS# MEQ# MTH# 36 37 64 65 66 67 Storage skip (M) neg: Storage shift (M) neg: Search (Bb) words, if Search (Bb) words, if Search (Bb) words, if Search (Bb) words, if skip lower instruction; (M) pos: continue skip lower instruction, left 1; (M) pos: continue, left 1 (M - 1), or (M - 2), etc. = (A) skip lower instruction; ;t A, continue (M - 1), or (M - 2), etc. > (A) skip lower instruction; ~ A, continue L (Q) (M - 1), or (M - 2), etc. = (A) skip lower instruction; ;t A, continue L (Q) (M -1), or (M - 2), etc. > (A) skip lower instruction; ~ A, continue A AND Q TEST SELECTIVE JUMP AND STOP AJP 22 Jump to m on condition j QJP 23 Jump to m on condition j j 22 0 1 2 3 (A) = 0: Jump (A) ;t 0: Jump (A) Pos: Jump (A) Neg: Jump (A) = 0: Ret. Jump (A) ;t 0: Ret. Jump (A) Pos: Ret. Jump (A) Neg: Ret. Jump 4 5 6 7 5/64 SLJ 75 Jump to m on condition j SLS 76 Stop on j, and jump to m 23 (Q) = 0: Jump (Q) ;t 0: Jump (Q) Pos: Jump (Q) Neg: Jump (Q) = 0: Ret. Jump (Q) ;t 0: Ret. Jump (Q) Pos: Ret. Jump (Q) Neg: Ret. Jump 75 Jump Key 1: Jump Key 2: Jump Key 3: Jump Ret. Jump Key 1: Ret. Jump Key 2: Ret. Jump Key 3: Ret. Jump 76 Stop: Jump Key 1: Stop: Jump Key 2: Stop: Jump Key 3: Stop: Jump Stop: Ret. Jump Key 1: Stop: Ret. Jump Key 2: Stop: Ret. Jump Key 3: Stop: Ret. Jump 246: 141.1 00 CDC 3400 Data Code Table DATA CODE TABLE § 141. Internal BCD Code* Character Card 00 01 02 03 04 05 06 07 0 1 2 3 4 5 6 7 0 1 2 3 4 5 .6 7 10 11 12 13 14 15 16 17 8 9 8 9 8, 8, 8, 8, 8, 8, = (dash) 20 21 22 23 24 25 26 27 + A B C D E 30 31 32 33 34 35 36 37 H I F G +0 ) Internal BCD Code* 2 3 4 5 6 7 Character Card 40 41 42 43 44 45 46 47 (minus) J K L M N 0 P 11 11, 1 11, 2 11, 3 11,4 11, 5 11, 6 11, 7 50 51 52 53 54 55 56 57 Q 11,8 11, 9 11, 0 11, 8, 11, 8, 11, 8, 11, 8, 11, 8, R -0 $ * 12 12, 12, 12, 12, 12, 12, 12, 60 61 62 63 64 65 66 67 (Space) 1 2 3 4 5 6 7 12, 12, 12, 12, 12, 12, 12, 12, 8 9 0 8, 8, 8, 8, 8, 70 71 72 73 74 75 76 77 Y 3 4 5 6 7 / S T U V W X Z , ( 3 4 5 6 7 Blank 0, 1 0, 2 0, 3 0,4 0, 5 0, 6 0, 7 0, 0, 0, 0, 0, 0, 0, 0, 8 9 8, 8, 8, 8, 8, 8, 2 3 4 5 6 7 *Octal representation of 6-bit BCD codes shown. ©1964 Auerbach Corporation and Info, Inc. 5/64 246: 162.100 CDC 3400 Process Oriented Language 3400 FORTRAN PROCESS ORIENTED LANGUAGE: 3400 FORTRAN . 14 E! 162. Description (Contd.) o .1 GENERAL . 11 Identity: . . . . . .12 Origin: . . . . . . . . . . . Control Data Corporation. .13 Reference: . . . . . . . . 3400 FORTRAN General Information Manual, Pub. No. 555. . 14 Description ... 3400 FORTRAN . o A multi-branch status statement The 3400 FORTRAN language incorporates nearly all the features of FORTRAN IV and a number of improvements. Among the added features allowed in 3400 FORTRAN are: IF (UNIT, u) n 1 , n 2 , n 3 , n 4 which causes the program to jump to statement ni upon detection of the following conditions of input-output device u: o More than one entry point per subprogram, implemented by the ENTRY statement, which identifies alternate entry points in a function or subroutine subprogram. o n 1 - not ready; n 2 - ready and no previous error; n3 - EOF sensed on last input operation; Use of mixed mode arithmetic. n 4 - parity error on last input operation. o Multiple arithmetic replacement statements, e.g. : A=B=C=D=X+Y which causes the variables A through D to be replaced by the value of the eXJ?ression X + Y. o Eight modes of arithmetic. The five modes offered in FORTRAN IV - INTEGER, REAL (single precision floating point), DOUBLE PRECISION floating point, COMPLEX, and LOGICAL - are standard; the remaining three types are arbitrary and must be defined by the programmer. The user must specify the variable involved in a TYPE declaration and insert library routines which execute the cues generated by the compiler . Use of the masking (Boolean) operators. NOT. , . AND. , and. OR. on 48-bit arrays. o Buffering of all input-output operations by use The input-output statements of FORTRAN II have been retained in addition to those of FORTRAN IV. As in FORTRAN II, source statements are used instead of library calls to test for sense light, overflow, sense Switch, and divide check or fault conditions. The degree of compatibility of 3400 FORTRAN with Control Data FORTRAN-62, 3600 FORTRAN, and 3200 FORTRAN can be summarized as follows: of the BUFFER IN and BUFFER OUT statements. o Use of subscripted subscripts. For example, the FORTRAN IV statements: L M I(L) C D(M) o 3200 FORTRAN programs can be compiled by the 3400 FORTRAN compiler if the type CHARACTER is not used and if the library routines are replaced by source statements in certain cases. J(K) can be expressed by the following single statement in 3400 FORTRAN: C o o o All 3400 FORTRAN programs are acceptable to the 3600 FORTRAN compiler. = D(I(J(K»). Use of arithmetic expressions in subscripts; e. g., B(B*K*SINF(J». The form of all subscripts must agree with the standard FORTRAN forms. ENCODE and DECODE statements, which permit transfer of data from one location in memory to another. The data is converted according to FORMAT statements and stored in an array or list of variables. o FORTRAN-62 can be made compatible with 3400 FORTRAN by changing Boolean statements, FORMAT statements, arithmetic checks, Hollerith constants, and subroutines as required to meet the 3400 FORTRAN definitions. The 3400 FORTRAN compiler consists of a translator and an assembler (COMPASS). The translator reads the source program from an input tape, and the translator and assembler communicate with each other via lists which may be recorded on a scratch tape. Each FORTRAN subprogram is compiled independently, and the object program output consists of binary card images on magnetic tape. @1964 Auerbach Corporation and Info,lnc. 5/64 CDC 3400 246: 162.140 § 162. . 14 .14 Description (Contd.) Descriptto.n (Contd.) The compiler operates in conjunction with the 3400 SCOPE monitor system, and the object programs generated by the compiler are designed for execution under SCOPE control. (usually those involved in a buffered input or output operation). (5) Conditional statements may be of the type IF (e) nl, n2. where e is a logical expression. A branch to statement nl is executed if e is true, or to n2 if e is false. (Both 3400 FORTRAN and FORTRAN IV have the statement IF (e)s, which causes a branch to statement s if logical expression e is true; if e is false, the next sequential statement is executed.) (6) Multiple replacement statements (e. g., A = B = C = D = X + Y) store the value of the expression on the right in each of the variables appearing on the left, with type conversion if necessary. (7) Up to eight type declarations can be used to specify the mode of the associated variables. Five types are standard, and an additional three can be defined by the programmer in the "TYPE namet (e) list" statement. Modes can be mixed in arithmetic expressions. The mode of an expreSSion corresponds to the highest order of any operand type within the expreSSion. The order of the standard types from highest to lowest is: The following lists represent a tabulated comparison of 3400 FORTRAN with the IBM 7090/7094 FORTRAN IV language, as described in Section 408:162. Restrictions upon 3400 FORTRAN (1) The ALOGI0 (real common logarithm) function is not currently available. (2) Hollerith constants cannot exceed 120 characters in 3400 FORTRAN; in FORTRAN IV, the maximum length is 132 characters. (3) The logical constants. TRUE. and . FALSE. of FORTRAN IV are represented by 1 and 0 in 3400 FORTRAN. (4) The FORTRAN IV form DATA iI/value list/, i2/value list/ ... must be changed to DATA (i1 = value list), (i2 = value list) for 3400 FORTRAN. (5) The subprograms EXIT (terminate job execution) , DUMP (dump core storage and then terminate job execution), and PDUMP (dump core storage and then continue execution) are not provided. (6) The statements calling subroutines BLOCK DATA, SLITE, SLITET, SSWTCH, OVERFL, and DVCHK of FORTRAN IV must be replaced by source statements in 3400 FORTRAN. (7) The .END statement is used to mark the physical end of a subprogram in 3400 FORTRAN. It also acts as a RETURN as the last statement in a subroutine (the RETURN statement can be omitted in this case). In FORTRAN IV, the END statement is used only to terminate a compilation. Extensions of 3400 FORTRAN (1) Names may be up to 8 characters in length. (2) Integer constants can have a maximum value of 247 - 1 and can be up to 15 digits in size· floating point constants can range from 10- 308 to 10+308 and can be up to 11 digits in size for real constants and 25 digits for double precision constants; Boolean constants can be up to 16 octal digits (48 bits) in size. (3) (4) 5/64 BUFFER IN and BUFFER OUT initiate the buffered reading or writing of one block on magnetic tape from sequential core storage locations, beginning and ending with specified variables. ENCODE and DECODE control code or radix conversions and packing into or unpacking from sequential locations of a list of variables COMPLEX DOUBLE REAL INTEGER LOGICAL. (8) The ENTRY statement designates an entry point other than the first executable statement in a subprogram. (9) The PROGRAM statement is the first statement in the main program. (10) Subscripts may be arithmetic expressions or subscripted subscripts. (11) The operators . AND., • OR., and . NOT. can be used for masking operations upon two 48-bit operands, thus providing the Boolean capacity of FORTRAN II. (12) If a type LOGICAL variable is dimensioned, up to 32 bits will be stored in a single word. If the variable is not dimensioned, each bit will be assigned a separate word location in storage. (13) Statement numbers can range from 1 to 99999. (14) Status checking statements - IF(EOF, u) nl, n2; IF (10 CHECK, u) nl, n2; and IF (UNIT, u) nl, n2, n3, ll4 - check for end-of-file, parity errors, and ready conditions. (15) A LENGTHF (i) function returns the number of words read during the last input operation on unit i. ' (16) The statement IF EXPONENT FAULT n1' n2 checks for exponent overflow. 246:162.141 PROCESS ORIENTED LANGUAGE: 3400 FORTRAN . 14 I!l 162. .14 Description (Contd.) (17) No parenthesized list of statement numbers is required in an assigned GO TO statement. (18) The character "$" can be used as a statement separator, permitting more than one source statement to be written on a line. (19) The COMMON statement can designate two types of common block storage - labeled and Description (Contd.) numbered (or blank). Data can be prestored in labeled common areas by means of the DATA statement. (20) In FORMAT statements, the following added types of conversions are permitted: logical conversion (Lw); alphanumeric conversion right justified in storage with zero fill (Rw); and complex conversion (C(Zw. d, Zw. d), where Z may be either E or F conversion). ©1964 Auerbach Corporation and Info, Inc. 5/64 246: 171.1 00 CDC 3400 M. O. Language 3400 COMPASS MACHINE ORIENTED LANGUAGE: 3400 COMPASS Ii 171. • 13 .1 GENERAL .11 Identity: •••••.••• 3400 COMPASS. • 12 Reference: •.•.••• 3400 COMPASS General Reference Manual. • 13 Description COMPASS is the basic assembly language of the CDC 3400 system and is used with the SCOPE operating system. This language includes all the machine code instructions. COMPASS allows for source language changes to already assembled programs, and for system, installation, or programmer-provided macro instructions. Programmer-provided macros may be included in the library. Communication between different subprograms and library subroutines is provided by use of COMMON blocks and the EXTernal pseudooperation. Communication with the operating system is by way of the system macros. There are COMPASS assembly languages for the Control Data 3200, 3400, and 3600 systems. While they are based on a common pattern, there is no overall compatibility between the three languages. Upward compatibility does exist, in normal circumstances, between 3400 COMPASS and 3600 COMPASS. Use of COMPASS eliminates the need for the programmer to take care of complex format requirements of many of the CDC 3400 instructions. In particular, the many modifications which are available in the use of the AUGMENT instructions can now be contained within the augmented instruction instead of being written separately. There are three types of macro codes. These are 3400 System macros (provided with the CDC system itself), Library macros (provided by the installation), and programmer-provided macros (provided within the program itself). These macros are normally written in COMPASS language and are inserted into the assembled coding each time they are called. However, some control is included by providing two ps eudo-operations IFN, and IFZ. During assembly, these operations are used to test the value of one parameter or expression against another to determine whether or not to insert the next "n" instructions of the macro coding. Description (Contd.) Closed subroutines may be called into a program by the use of the EXTERNAL function. These are only incorporated into the program once • The assembly language performs two roles: first it allows a programmer to write machine instructions and constants in a conventional form: and second, it provides a systematic means of USing any library, monitor, or subroutines as desired. Labeling is unusually free. Address symbols are normally one letter with an option of being followed by up to seven further alphameric characters for all labels. Three other types (+, -, and all numeric symbols) serve other functions. There are two types of data areas; both are called "COMMON" areas. These are differentiated in the language by having alphameric (called "Labeled COMMON") or numeric (called "Numbered COMMON") labels, and in usage by being able to preset the Qontents of the areas at load time only if "Labeled COMMON" is used. Communication with other independently written routines is arranged by the ENTRY points and the EXTernal symbol linkage. These operations provide for a label to be common to more than one routine. The actual linkage is created at loading time. The assembly program for the CDC 3400 is designed to accept, as input, cards or card images containing symbolic 3400 programming instructions. It translates the symbolic instructions into 3400 machine language programs in relocatable binary, for loading into any portion of memory at run time. The assembler will produce as output any co:r:il)"i.nation of: G Output listing of the assembled program. o Relocatable binary card output for subsequent loading and execution of the assembled program. o Relocatable binary card images on an "assemble and run" tape for immediate loading and execution of the assembled program. o Compressed symbolic output deck to be used as input for subsequent modification and reassembly. @1964 Auerbach Corporation and Info, Inc. 5/64 246:171.200 CDC 3400 § 171. .24 .2 LANGUAGE FORMAT .21 Diagram: .22 Legend ... same as for 3600 COMPASS; see Page 247 :171. 100. Operation Code Field: • . . . . . . . . This field holds any of the CDC 3400 mnemonic instruction codes with modifiers, an octal integer 00-77, the name of a macro instruction, or any of the pseudo instructions. If a modifier is used, it must be separated from the operation code by a comma: no blank columns may intervene. Address Field: . . . . The address field begins anywhere after the blank which terminates the operation field (but before column 41) and ends at the first blank column. It may have one or more subfields, depending upon the instruction. Subfields, which are separated by commas on the coding form, specify the following: m word address y operand b index register x shift count mandatory location symbol v second index register Comments Field: ... Comments may be included with any instruction. They are separated from the last character in the address field by a blank and they may extend to column 72. Comments do not affect assembly, but will be included on the output listing. Sequence Number Field: •.••••.•. Columns 73-80 may be used for sequence numbers or for program identification. This field has no effect upon assembly, but is checked for proper sequencing during the assembly process. .23 5/64 Corrections: ....... three pseudo instructions, DELETE, REPLACE, and INSERT, are available which operate on a condensed (COSY) deck. Special Conventions .241 Compound addresses: ....• e.g., SYMBOL + 5. .242 Multi-addresses: .. none . . 243 Literals: . . . . . . . 8 to 16 characters, depending on the code . . 244 Special coded addresses: . . . . . * means this address. ** means 777778. .± forces an instruction into the upper or lower half of a word. .3 LABElS .31 General .311 Maximum number of labels: . . . . . . . 1,500. .312 Common label formation rule: .. 1 to 8 alphamerics including certain special characters. Blanks are not required. First character must be alphabetic. .313 Reserved labels: .. none. .315 DeSignators: . . . . . none. .316 Synonyms: • . . . . . yes, via EQUivalence pseudo-op. .32 Universal Labels: . 33 Local Labels none, but individual labels can be made universal to several independent subprograms, being called an External Table Entry to each subprogram. .331 Labels for procedures Existence: . . . . . optional. Formation rule First character:. alphabetic character (A-Z). others: . . . . . . A-Z, 0-9, or period. Number of characters: ... 1 to 8 . . 332 Labels for library routines: . . . . . . same as for procedures . . 333 Labels for constants: •.... same as for procedures . . 334 Labels for files: .. none. .335 Labels for records: . . . . . . none. .336 Labels for variables: . . . . . same as for procedures. .337 Labels for other subprograms: ... same as for procedures. .338 others Labels for blocks containing preset data Existence: ..•. optional. Formation rule: . 1 to 8 alphabetics; "Labeled Common Blocks. " Labels for reserved blocks for working storage Existence: . . . . . optional. Formation rule: . 8 numeric or blank characters; an all blank label is acceptable; "Numbered Common Blocks. " Labels for arrays: same as for procedures. MACHINE ORIENTED LANGUAGE: 3400 COMPASS ~ .54 171. .4 DATA • 41 Constants • 411 Maximum size constants External Form Machine Form Decimal integer:•.• decimal integer, with optional scaling factor expressed in binary or decimal. Fixed numeric: •.• not allowed. Floating numeric: • decimal integer or fraction with scaling factor. • 412 Maximum size literals Integer Decimal: •••••• 14 digits. Octal: ••••••.• 16 octal digits. Fixed numeric: ... not allowed. Floating numeric: 10 ± 308. Alphameric: .•••• 8 charactflrs. • 42 246: 171.400 Working Areas • 421 Data layout Implied by use: ••• no. Specified in program: •••.•• VFD (Variable Field Definition), BLOCK and COMMON statements • • 422 Data type: •••.••• implied by use. • 423 Redefinition: •••••• use of BLOCK statements. .43 Input-Output Areas: • specified in program. •5 PROCEDURES .51 Direct Operation Codes Translator Control .541 Method of control Allocation counter: •..•• Label adjustment:. Annotation: .•.•• .542 Allocation counter Set to absolute: .. various pseudo-ops • various pseudo-ops. Remarks • no (ORGR relocatable pseudo-op entry in location) . Set to label: ...• yes. Set relative to label: ...••.. yes. Step forward: .•. implied by "set relative to label. " step backward: ••. implied. Reserve area: ••. yes • .543 Label adjustment Set labels equal: • yes. Set label relative:. yes. Set absolute value: yes. Clear label table:. not within single subprogram; yes, by dividing into separate subprograms • • 544 Annotation Comment phrase: yes . Title phrase: •.•• no. .545 Other Allocation mode: • absolute or relocatable. .6 SPECIAL ROUTINES AVAILABLE .61 Special Arithmetic: none • • 62 Special Functions .621 Facilities: .511 Mnemonic Existence: •••••• Number: ••••••• Example: ••••••• Comment: ••••••• optional with absolutes. 96. FDV; Floating Divide. where one op code has more than one type of operation, mnemonic modifiers are written after the operation code; thus, FDV, MG, UR would indicate that the magnitude of the addressed operand be used, and lJ;ht the operation should be unrounded • • 512 Absolute Existence: . • . . . . optional with mnemonic. Number: ••••••• 64. Example: ••••••• 45 for Add Logical. • 52 .53 Macro-Codes: •••• yes, as provided by system installation in the library, or by programmer at head of the program. Interludes: •••••.• none. ••••. none; any could be added in installation library . • 622 Method of call: ••. LIBM names the library macro-operations at the start of the program. The use of a declared macro name in the operation field of the coding sheet calls the actual macro. .63 Overlay Control:. • • handled by operating system. .64 Data Editing .641 Radix conversion: •• decimal-to-binary for initial constants. Code translation: . alphabetic-to-BCD, typewriter • • 642 Format control:. . none. .65 Input-Output Control: •.••.. own program, with I/O pseudo-op check on I/o units involved • .66 Sorting: .67 Diagnostics: ••.•. none can be specified by the programmer for use at running time. ©1964 Auerbach Corporation and Info,lnc. ••..••. none. 5/64 246: 171.700 § CDC 3400 171. .82 .7 LIBRARY FACILITIES · 71 Identity: .72 Kinds of Libraries COSY: . . . . . . . . . . DELETE: ••••.•• INSERT: ••••.••. REPLACE: •••.•• DEC: •••••••••. COSY identification. * delete portions of program. insert portions of program. replace portions of program. insert decimal integer constants. EJECT: ••••••••. eject a page on output listing. END: ••••••.•• specify end of subprogram. ENDIF: ••••••••• terminate an IF or 1FT statement. ENDM: •••..•••. terminate a macro definition • ENTRY: ••.•.••.• define entry point. EQU: ••.••..•.. equate undefined symbol to defined symbol. EXIT: ••.....•. exit to monitor • EXT: •••..•.... define external symbol. IDENT: . . . • . . . . identify subprogram name • IF: •••••.•....• conditional assembly numeric. 1FT: ..•..••..• conditional assembly for macros - literal. · . • . . • . . . insert input-output transIOTR: mission control word. LIBM: . . • . . . . . . library macros. LIST: . . . • . . . • . resume output listing. MACRO: . . • . . . . definition of macro instruction • NOLIST: ..••.•.. supress output listing. NOP: •...•.••• inserts a do-nothing operation code • · . . . • . • . . insert octal constant. OCT: ORGR: · • . . • . . . . set location counter. · .•.••••• insert remarks. REM: SCOPE: . •..•.•. return to SCOPE control. ..••.••• insert spaces in output listing. SPACE: TYPE: • •.•.••.• insert typewriter code. •..•...• installation library. .721 Fixed master: •••.• no. • 722 Expanda1:ile master:. • yes. .73 Storage Form: • 74 Varieties of Contents: •...••. as determined by installation. • 75 Mechanism ••.. magnetic tape. • 751 Insertion of new item: ••••••.•• via SCOPE Monitor. .752 Language of new item: ••••••..• open . • 753 Method of call: .••• operation code identifies routine. ENTRY identifies entry point. Operating Manual lists special calls. • 76 Insertion in Program .761 Open routines exist: • 762 Closed routines exist: ••..•••.• .763 Open-closed is optional: •.••••• .764 Closed routines appear once: •••. yes. yes. yes. yes. .8 INSTRUCTION CODE REPERTOIRE • 81 Macros:......... as provided by installation library. .82 Pseudos (Extracted from Control Data 3400 Computer System COMPASS General Information Manual) BCD: ••••.•... BES: ••••.•.•.• BLOCK: •.•.•.•.• BSS: •.••...•.• CALL: ••••.•••• COMMON: •.••... 5/64 insert BCD characters. reserve block of storage. specify block of common. reserve block of storage. enter subprogram declare array in common. Pseudo (Contd.) *COSY is the name given to an optional compressed reproduction of the symbolic source program which, in turn, may be used as input for subsequent assemblies. • 84 Direct:....... . • All instructions in the instruction repertoire have been given mnemonic names and are allowable in the COMPASS language. These mnemonic names are listed in the Instruction List (Section 246:121). 246:191.100 CDC 3400 Operating Environment 3400 SCOPE OPERATING ENVIRONMENT: 3400 SCOPE • 12 13 191. .1 GENERAL .11 Identity:.. . 12 Description . . . . . . . 3400 SCOPE. 3400 SCOPE is an operating system that allows a group of programs to be run sequentially - one program at a time - on a Control Data 3400 computer. During the running of a program, the operating system occupies the lower portion of core storage; the actual amount of storage utilized depends upon the routines called in. Normally SCOPE's demand on central processor time will be negligible. The three basic languages (3400 FORTRAN, 3400 COBOL, and 3400 COMPASS) all use SCOPE during both the testing and production stages. For efficient operation of SCOPE with these translations, a 4-tape system with 32,768 core storage locations is required. Description (Contd.) Like all operating systems, 3400 SCOPE provides a number of services to the various people involved. Some of these services naturally restrict the freedom of these involved by predetermining methods of operation which mayor may not be the best ones possible under the existing circumstances. Other services involve giving up areas of storage, the use of specific peripherals, etc., and to this extent it can be said that they may have a "cost" involved. In the following tables the facilities provided by 3400 SCOPE are listed as looked at from various points of view - those of the FORTRAN or COBOL programmer, the assembly language programmer, the user (i. e., the person who uses a "canned" program he may not have written), the computer room operator, and the data processing manager. All these individuals have different points of view, but all have a vital interest in maximizing the overall effectiveness of the computer system. For the COBOL & FORTRAN Programmer SCOPE Provides During Writing: Snapshot facilities in Debug facilities in assembly language source language (191. 5). (191. 5). -- - SCOPE Does Not Provide Storage space is needed for these facilities. Trace facilities in assembly language (191. 5). - - --- - - - - - - - - ----- During Testing: Resultant Restrictions Standard Recovery Dump option. -- -- --------- © 1964 Auerbach Corporation and Info, Inc. 5/64 CDC 3400 246: 191.120 § 191. For the Assembly Language Programmer SCOPE Provides During Writing: Input-output routines and radix conversions (191. 2). f------ - SCOPE Does Not Provide Standard routines must be used. Segmentation control system (191. 3). ~- - - - - - -- -- -----Restart procedure (191. 45). Automatic dumps on abnormal operation (191. 4). Trace facilities (191. 5). For the "Canned Program" User SCOPE Provides SCOPE Does Not Provide Resultant Restrictions During Normal Running: Allocation of peripherals (191. 3). Automatic servo swap facilities or printouts (191.32). Standard I/O routines and radix conversion routines must be used. Time-shared operation with other programs (191. 4). Overlay facilities (191. 3). - - - During and After Abnormal Running: Automatic segmentation (191. 3). -- - -- Automatic dump Setting up of restart procedure (4 types) points. '(191. 45). Automatic restart facilities. Standard interrupt processing routines (SCOPE simply directs the interrupt to a programmerprovided routine) (191.4) . 5/64 --------- Snapshot facilities (191. 5). During Testing: r- Resultant Restrictions Restricted simultaneity for some peripherals. Segments must be predefined. - 246: 191.121 OPERATING ENVIRONMENT: 3400 SCOPE Ii 191. SCOPE Does Not Provide For the Computer Room Operator SCOPE Provides During Normal Running: Standard Procedures for input-output unit allocation. Resultant Restrictions Type-outs for loading and unloading tape. Re-run ability (191. 4). Run-to-run supervision - - Amendment of running order (191. 6). - - During and After Abnormal Running: - - - - - Automatic dump procedure (4 types). r- - - - - - Setting up of restart points. - - - - Automatic restart facilities. For the Data Processing SCOPE Provides Manager All circumstances: Originator: Control Data Corporation . 15 Maintainer: Control Data Corporation. .16 First Use: .2 PROGRAM LOADING .21 Source of Programs .211 Programs from online libraries: . . . . '-. Resultant Restrictions Accounting records (191. 7). .14 .. SCOPE Does Not Provide November, 1964 .22 Library Subroutines: can be called at load time or during a run from a library tape . .23 Loading Seguence: control card; subroutines for this run in any order (these are stored on a magnetic tape unit if necessary); data for this run if desired; further runs; ending with an End of Job control card. the SCOPE library tapes (which can be created as desired) can contain any collection of translators, subroutines and other data or programs. These may be incorporated at load time or during a run. .212 Independent programs: loaded from card reader or tape unit with a control card. . 213 Data: . . . . . . . . . . . any available type of input device, as specified in the program. (The data for a program is frequently loaded immediately behind the program itself.) .214 Master routines: ... the SCOPE routines are held on all library tapes, together with bootstrap routines to bring them into memory. Normally jobs are loaded and executed sequentially as physically placed on the input unit; however, the operator has emergency facilities to override this sequence. .3 HARDWARE ALLOCATION .31 Storage .311 Sequencing of program for movement between levels: ... object programs, written as subprograms, can be divided into overlays defined by the programmer, and moved as needed into memory. ©1964 Auerbach Corporation and Info, Inc. 5/64 CDC 3400 246: 191.312 § .45 191. .312 Occupation of working storage: . . . . . . . . . all addresses are relocated during loading. Once loaded, no further change is made. . 32 Input-Output Units . 321 Initial assignment: ... performed by SCOPE, using equipment availability table and logical unit definition. . 322 Alternation: . . . . . . . automatic, by SCOPE. .323 Reassignment: . . . . . manual alteration of equipment availability table, followed by SCOPE operation. .4 RUNNING SUPERVSION .41 Simultaneous Working: controlled by the programmer's own coding; each input-output request is accepted or rejected depending upon the immediate availability of an appropriate input-output channel Restarts .451 Establishing restart points: . . . . . . . . . . recovery dumps are written when a job is abandoned. No facility is available to automatically set up restart points ahead of time . .452 Restart process: own coding . ·5 PROGRAM DIAGNOSTICS .51 Dynamic no provision . SNAP is a SCOPE control statement which prints the contents of a single core location. Post Mortem: . . . . . . a recovery dump can be written . · 511 Tracing: .512 Snapshots: .. · 52 .6 OPERATOR CONTROL .61 Signals to Operator .42 Multi-Programming: .43 Multi-Sequencing: ... no provision. .611 Decision required by operator: . . . . own coding. .612 Action required by operator: . • . . . . . . print-out on output comment medium . . 613 Reporting progress of run: . . . • . . . . . . . print-out on output comment medium (normally console typewriter) . . 44 Errors, Checks, and Action · 62 Operator's Decisions: console typewriter. .63 Operator's Signals no provision. Check or Interlock Action Allocation impossible: In-out errorsingle: check by input! output control In-out errorpersistent: check by input/ output control Invalid instructions: check 5/64 i check by loader flagged during loading. status information list for progrmmer. transfer to specific programmer coding. transfer to specific programmer coding. .631 Inquiry: . . . . . . . · 632 Change of normal progress: manual interrupt buttom on console. SCOPE statements via console typewriter. .7 LOGGING .71 Operator Signals: console typewriter. . 72 Operator Decisions: . console typewriter. . 73 Run Progress: . . . . console typewriter . .74 Errors: errors which will cause job termination are logged on the console. console typewriter and, optionally, the accounting medium. Underflow: check Invalid operation: check transfer to specific programmer coding. .75 Running Times: Improper format: check by loader error routine called in. .8 PERFORMANCE Invalid address: .81 System Requirements check transfer to specific programmer coding. Reference to forbidden area: check transfer to specific programmer coding. .811 Minimum configuration: . . . . . . • . . . . 1 3402 computer module. 1 3401 console with typewriter. 1 3409 storage module. 1 3447 Card Reader controller with 405 Card Reader. 246:191.811 OPERATING ENVIRONMENT: 3400 SCOPE I!I 191. .82 . 811 Minimum Configuration (Contd. ) 1 3655 line printer. 1 3406 bidirectional data channel. 1 magnetic tape control (dual channel). 4 magnetic tape units. .812 Usable extra facilities: additional tapes, I/O channels, and I/O equipment. .813 Reserved equipment: . the System Units (see below) are not available to the programmer except for the specified purposes. However, it is not necessary to use or assign all system units, and more than one system unit function can be allocated to a single physical unit. System Units include the following: Standard Input, Standard Output, SCOPE Libraries, System Scratch Record, Standard Load and Go. System Overhead . 821 Loading time: . . . . . under 1 minute . .822 Reloading frequency:. only if the SCOPE resident routines have been overwritten. Normally this is not done. .83 .84 . 85 Program Space Available: . . . . . . . . . . . Program Loading Time: . . . . . . . . Program Performance ©1964 Auerbach Corporation and Info, Inc. storage requirements for the resident 3400 SCOPE routines are not available to date. under 1 minute. essentially unaffected during normal production runs, since SCOPE merely directs run-to-run changeovers. 5/64 246:201.001 CDC 3400 System Performance SYSTEM PERFORMANCE § 201. GENERALIZED FILE PROCESSING (246:201..100) These problems involve updating a master file from transaction data in a detail file and producing a printed record of each transaction. This application is one of the most typical of commercial data proceSSing jobs and is fully described in Section 4:200.1 of the Users' Guide. The graphs for Standard File Problems A, B, C, and D show the total time required for each Control Data 3400 standard configuration shown in Section 246 :031 to process 10, 000 master file records. For Configurations VllB and VIllE, where all four input-output files are on magnetic tape, total times are shown for both unblocked and blocked records in the detail and report files. Central processor time is essentially the same for all configurations. In integrated Configurations VI and VIlA, in which the detail file is read by the card reader and the report file is produced by the on-line printer, the printer is the controlling factor on total time required over most of the detail activity range. The central processor is occupied for only a small fraction of the total processing time. In most of the cases, it will be more efficient to divide the file processing problem into three separate runs: a card-to-tape transcription of the detail file, a processing run with all files on magnetic tape, and a tape-to-card transcription of the report file. The curves for paired Configuration VIlE show that the time required for the all-tape main processing run is tape limited. This is also true for Configuration VIllE, even though faster magnetic tape units are used. The card-to-tape and tape-toprinter transactions will run at card reader and printer-limited speeds, and their demands on the processor will be small. The master file record format is a mixture of alphameric and binary numeric items, designed to minimize the number of time-consuming radix conversion operations required. (Even so, most of the central processor time is devoted to editing and radix conversion operations, USing programmed non-standard subroutines.) A moderate degree of packing led to a record length of 18 Control Data 3400 words. SORTING (246:201. 200) The standard estimates for sorting 80-character records by straightforward merging on magnetic tape (Graph 246:201. 214) were developed from the processing times for Standard File Problem A according to the method explained in the Users' Guide, Paragraph 4:200. 213. MATRIX INVERSION (246:201. 300) In matrix inversion, the object is to measure central processor speed on the straightforward inversion of a non-symmetric, non-singular matrix. No input-output operations are involved. The standard estimate is based on the time to perform cumulative multiplication (c = c + aibj) in single-precision floating point (see Paragraph 246:051. 422). GENERALIZED MATHEMATICAL PROCESSING (246:201.400) This problem measures over-all system }.Jo~formance on a simple mathematical application that involves widely varying ratios of input-to-computation-to-output volume, as described in Section 4:200.4 of the Users' Guide. As in the File Processing problem, the total elapsed time is shown for both unblocked and blocked input and output files. All computations are performed in Single-precision floating point. In Configurations VI and VIlA, input is via the on-line card reader and output is via the on-line printer. If cardto-tape and tape-to-printer transcriptions are carried out in separate runs, the time required for the all-tape main processing run can be read from the curves for paired Configuration VIIB. Configuration VIIIB utilizes high-speed tapes. GENERALIZED STATISTICAL PROCESSING (246:201. 500) This problem measures overall system performance on a common statistical application: the development of cross-tabulation tables, as in the analysis of the results of a survey. The problem is defined in Section 4:200.5 of the Users' Guide, and the performance of the Control Data 3400 is shown in Graph 246:201.514. © 1964 Auerbach Corporation and Info, Inc. 5/64 246:201.011 CDC 3400 § 201. WORKSHEET DATA TABLE 1 CONFIGURATION WORKSHEET ITEM VIIB (Blocked Files 3 & 4) VI, VIIA 1 (File 1) Char/block Reeords/bloek msee/bloek (File 1) K 2!!.e. 1 = Fil~ _ _. _ ~_3 lnputOutput Times File 4 msee/switch ~ --.~ 1=File2 File 4 ~1=FileL~3 msee/bloek msec/record Central Processor Times msee/detail msee/work msee/report 3 msee/bloek for C. P. Standard ProblemA F = 1.0 ~---.~---.- ~---.- Space 1 024 -----12* ---___ 1_.4~_ 1.092 0.01 4:200.112 0.01 0 . 2 4 * _ I- _ _0_.02 _ _ _ 0.03 0.24* 0.119 1------ 0.167 0.119 1----- - - 0.167 I---~- f - - - - - - - -- 0.24* _ 0.24* 0.119 ------ ---~- I--~- I--~O_ --~0.230 0.230 0.230 1 - - - - - -1 - - - - - - f - - - - 1. 092 1.092 4:200.1132 1.092 0.12 ~---I - - - - -1 - - -1 • 361.36 1.36 1.36 ~---- - - - 2 1 . 8 8 - - I---21.88 21.88 21.88 a3 K 4:200.114 0.'260.26 File 1 Master In 0.26 0.26 ,------ --I-- 0.26 0.26 0.26 File 2 Master Out 0.26 ,------ --.I---- - _ _ _ _0.1_6_ _ _ _~16_ _ _ 1---_0.1~ _ File 3 Details 0.16 1------0.24 0.24 File 4 Reports 0.24 0.24 0.12 0.12 -- -- - - - ---- - - -- - - - - - ------ --- 24.28 - - -- - - ---- 24.28 24.28 -- 24.28 (48-bit word) ----- - - - -2,048 - - - - - - 2,048 - - - - -1 - 2,048 - - - - - - -------189- - 1 8 9 189 Std. routines 2,048 ,----,----rFixed - - = - - ____ 3 (Blocks 1 to 23) 189 1----'--- - 6 (Blocks 24 to 48) ----_.-------- - 2 - ; 4 2 4 - t-~4 - - -- -762- - -2,424 - - - - 762 762 Files 762 1 - - - - - - - 1--------.- ,------- -------- - - - 200 200 Working 200 200 2,424 I--'- - - ----'- 1 - - - - - - Total • 12 records per block in File 3; 8 in File 4. 5/64 6 0.01 - - - -0.119 --0.167 --- Unit of measure 1 024 _ I-- _ _0_.26_ _ _ I---~- I- _ _ _O.~_ 0.12 -- Standard ProblemA 0.01 _ _ _O...!L- ~9_ _ _. _ _~3_0_ _ b7 + b8 REFERENCE Files 3 & 4) ---~- I- _ _ _ O~_ t---~-- ~~_ _ _0 _ . 0 1 _ --~- f - _ _0_.0_1_ _ I--~- 0.03 Total 4 24* ____ ____ 0.0_2_ _ _ I - - File 4 2 1 024 VIIm (Blocked 8 8 8 8 ___ 14_ _ _ _ _ _ 2_7_ _ _ t- _ _ _ 27 _ _ _ _ I---~_ _ 5_0_ _ _ 1- _ _2_4*_ _ _ _ r - - _ 6_ _ 12* 98 ~_3_ _. _ msee penalty 1 024 vum 5,623 5,623 5,623 5,623 4:200.1151 SYSTEM PERFORMANCE 246:201.012 § 201. WORKSHEET DATA TABLE 2 CONFIGURATION WORKSHEET ITEM REFERENCE VI, VIIA 5 Floating Fixed/Floating point input Unit name VIIB r--output -- -- Card Reader Floating 1--- --Line Printer input 604 MTU VIIrn Floating 607 MTU - - 604 --MTU - - - -607-MTU SO digits 80 digits 80 digits - - --SO digits-- -- 80 digit;----SO digits Standard input Mathematical 50 unblocked 12; blocked 4 unblocked 6; blocked 2 Tl msec/block I--- - - -- 1 - - - -- -- --- --- --output unblocked 12; blocked 4 unblocked 6; blocked 2 65 T2 Problem A input 2 2 2 T3 msec penalty 1 - - - -- -- ,...- --2-- ---2--output 3 T4 msec/record 2.S6 T..5.r-- -I - - - - - -- - ---- 2.S6 ---- 2.S6 msec/5 loops 1.80 1.S0 1.80 T6 I - - - -----------2 : 9 0 msec/report 2.90 2.90 T7 Size of record 1. -output 4:200.413 r- 7 standard Statistical Unit name 604 MTU 607 MTU Size of block 604 MTU 607 MTU Records/block B 16 msec/block Tl 26 msec penalty T3 .01Yb1ock T5 .016 Problem A msec/block C.P. I-msec/record I--msec/table 16 13 -- --- ---:ra - --- -- -- -- -- r- T7 .007 .049 @1964 Auerbach Corporation and Info, Inc. .06/block .016 I--- - - ."iiii7 - I- - - .049 - 4:200.512 5/64 246:201.100 CDC 3400 System Performance SYSTEM PERFORMANCE § 201. · 112 Computation: . . . . . . . standard . .1 GENERALIZED FILE PROCESSING .11 Standard File Problem A . 113 Timing basis: . . . . . . uSing estimating procedure outlined in Users' Guide, 4:200.113. . 111 Record Sizes Master file: . . . . . . 108 characters. Detail file: . . . . . . . 1 card. Report file: . . . . . . . 1 line. · 114 Graph: . . . . . . . . . . . see graph below . · 115 Storage space required: . . . . . . . . 5,623 words. 1,000.0 7 4 2 100.0 7 4 2 Time in Minutes to Process 10,000 Master File Records ~ 10.0 7 ...P ../"" 4 /' / 2 / 1.0 /I 7 4 II/' ~ --- -6.-=..:7 7f /I VIlB A ~vmB V - / ~ ~ -- ~ VIlB 2 ==" - f==- J...,.. =---- VIIlB ."",- - --='-- 0.1 0.0 0.33 0.1 Activity Factor Average Number of Detail Records Per Master Record 1.0 (Rom an numerals denote standard System Configurations.) = == Unblocked Files 3 & 4 Blocked Files 3 & 4 © 1964 Auerbach Carporation and Info, Inc. 5/64 246:201.120 § CDC 3400 201. . 12 . 122 Computation: .. . 123 Timing hasis: . . .. standard . . . . uSing estim ating procedure outlined in Users' Guide, 4:200.12 . .124 Graph: . . . • . . . . . . . see graph below. Standard "File Problem B . 121 Record sizes Master file: . . . . . . 54 characters. Detail file: . . • . . . . 1 card. Report file: . . . . . . . 1 line. 1,000.0 7 4 2 100.0 7 4 2 Time in Minutes to Process 10,000 Master File Records - 10.0 7 ~ ./ 4 / 2 7 4 2 /' ~ / 1.0 , ~ ./ I ./ / 1(....... ..---:.. """" "' .... 7 ~ '-,," 0.0 - VillB ~ I 0.1 VI.V~ 0.1 VII~ -~~ VIIIB _ _ - - - ...... " , - * 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record (Roman numerals denote Standard Configurations.) .,.". __ == 5/64 - --- --- ~ .-"'- - Unblocked Files 3 & 4 Blocked Files 3 & 4 SYSTEM PERFORMANCE § 246:201.130 201. . 13 .132 Computation: . • . . . . . standard . . 133 Timing basis: . . . . . . using estimating procedure outlined in Users' Guide, 4:200.13 . .134 Graph: . . . . . . . . . . . see graph below. Standard· File Problem C . 131 Record sizes Master file: . . . . . . . 216 characters. Detail file: . . . . . . . 1 card. Report file: . . . . . . . 1 line. 1,000.0 7 4 2 100.0 7 4 2 Time in Minutes to Process 10, 000 Master File Records 10.0 7 VI. VIIA...... ./ 4 /' 2 / 1.0 /' ----------- --- - VilB ~ ----- VIlB =---- .,.,.... 7 VillB ../ 4 ...-- - __ ~ VillB_--- ----~ 2 0.1 0.0 0.1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record (Roman numerals denote standard System Configurations.) Unblocked Files 3 & 4 mocked Files 3 & 4 @1964Auerbach Corporation and Info, Inc. 5/64 246:201.140 CDC 3400 III 201. .14 . 142 Computation: . . . . . . . trebled. .143 Timing basis: . . . . . . using estimating procedure outlined in Users' Guide, 4:200.14 . .144 Graph: . . . . . . . . . . . see graph below. Standard File Problem D • 141 Record sizes Master file: . . . . . . 108 characters. Detail file: . . . . . . . 1 card. Report file: . . . . . . . 1 line. .- 1,000.0 7 4 2 100.0 7 4 2 Time in Minutes to Process 10,000 Master File Records VI.V~ 10.0 7 ...,. 4 7 2 .- 7 4 /' ~- 2 .- .7 7 I 1.0 .AI" VIIB _ -- ----------- --=--- VIIIB __ .......0:.- -- 7 VII~ .......,,- VII~..--- ~ /' ",,,.,P'iiP ---~ ~-= 0.1 0.0 0.1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record (Roman numerals denote standard System Configurations.) Unblocked Files 3 & 4 Blocked Files 3 & 4 5/64 SYSTEM PERFORMANCE § 246:201.200 .213 Timing basis: . . . . . . uSing estimating procedure outlined in Users' Guide, 4:200.213 . . 214 Graph: . . . . . . . . . . . see graph below . 201. .2 SORTING . 21 Standard Problem Estimates .211 Record size: . . . . . . . 80 characters . . 212 Key size: . . . . . . . . . 8 characters. , 1,000.0 7 4 2 100.0 7 4 I 2 Time in Minutes to Pnt Records Into Required Order 1I~ I .I 10.0 ff 7 #' 4 VI. VIlA. VIlB, , 2 I~ .,1 1.0 1I ,/ V /' " / /' ~B ff ff 7 1# f If' 4 / / 2 7 0.1 2 100 4 I I # I' V / 7 2 4 1,000 7 2 10,000 4 7 100,000 Number of Records (Roman numerals denote standard System Configurations.) ©1964 Auerbach Carporation and Info,lnc. 5/64 246:201.300 CDC 3400 § 201. .3 MATRIX INVERSION .31 Standard Problem Estimates . 311 Basic parameters: ... general, non-symmetric matrices, uSing floating point to at least 8 decimal digits. .312 Timing basis: . . . . . . uSing estimating procedure outlined in Users' Guide, 4:200.312; 11-digit precision floating point, using the optional floating point hardware • .313 Graph: . • . . . . . . . . . see graph below. 10.0 7 4 2 I 1.0 I 7 I H /I 4 2 Time in Minutes for Complete Inversion I) 0.1 7 18 4 11 2 I 0.01 H 1/ 7 I I 4 If J 2 / 0.001 2 1 4 7 2 10 2 100 Size of Matrix 5/64 7 4 7 1,000 SYSTEM PERFORMANCE § 246:201.400 201. .4 GENERALIZED MATHEMATICAL PROCESSING .41 Standard Mathematical Problem A Estimates (Unblocked Input and Output) . 411 Record sizes: . . . . . . 10 signed numbers, avg. size 5 digits, max. size 8 digits . . 412 Computation: . . . • . . . 5 fifth-order polynomials. 5 divisions. 1 square root. .413 Timing basis: . . . . . . using estimating procedure outlined in Users I Guide, 4:200.413; unblocked input and output records; all arithmetic in 11-digit precision floating point, using the optional floating point hardware. .414 Graph: . . . . . . . . . . . see graph below. • 1,000 I . 7 4 2 ~~ ,.'/ 100 VI, VIA; R . 7 1L ~ 1.0 A' ~: Time in Milliseconds per Input Record 4 - VI, VIIA; R = 0.01, 0.1 R VIIB 10 = 1.0 !<> 2 ---- VIIIB. V !?'" ~ ~ ,# ~ h/. V ~ ~ R= 0.01, 0.1 ::? &" 7 V [R 4 2 1 2 0.1 4- 7 2 1.0 4- 2 7 10.0 7 100.0 C, Number of Computations per Input Record (R = Number of output records per input record; Roman numerals denote standard System Configurations.) @1964 Auerbach Corporation and Info, Inc. 5/64 CDC 3400 246:201.420 Ii 201. .42 Standard Mathematical Problem A Estimates (Blocked Input and Output) .421 Record sizes: • . . . . . 10 signed numbers, avg. size 5 digits, max. size 8 digits. • 422 Computation: • . . . . . . 5 fifth-order polynomials. 5 divisions. 1 square root. .423 Timing basis: . . . . . . using estimating procedure outlined in Users' Guide, 4:200.413; blocked input and output records; all arithmetic in ll-digit precision floating point, using the optional floating point hardware . .424 Graph: . . . . . . . . . . . see graph below. 1,000 7 I 4 2 ~~ 100 7 " "/ ~ 4 fl Time in Milliseconds per Input Record R = 1.0 2 .---- VIIB, ViliB 10 .., ~ i.o-" , [,..10- ~~ V R = 0.01. 0.1 ~ 7 4 ~ 1,...00- ~ ,,- . VIIB ViliB 2 1 0.1 2 4 7 1.0 2 4 7 10.0 2 4 C, Number of Computations per Input Record (R = Number of output records per input record; Roman numerals denote standard System Configurations.) 5/64 7 100.0 SYSTEM PERFORMANCE § .5 246:201.500 201. GENERALIZED STATISTICAL PROCESSING .51 .512 Computation: . . . . . . . augment T elements in cross-tabulation tables . .513 Timing basis: . . . . . . using estimating procedure outlined in Users I Guide, 4:200.513 . . 514 Graph: . . . . . . . . . . . see below . Standard Statistical Problem A Estimates . 511 Record size: . . . . . . . thirty 2-digit integral numbers. , 1,000.0 I 7 4 2 100.0 7 , 4 !P #11 2 Time in Milliseconds per Record / 10.0 V " 7 § 7' 4 II 1.0 ,#11 VI, VITA, VIm 2 -i - 1 1 VIllE / - '/ 7 4 2 0.1 2 1 7 2 10 4 2 7 100 4 7 1,000 T, Number of Augmented Elements (Roman numerals denote standard Configurations.) @1964 Auerbach Corporation and Info, Inc. 5/64 246:211.101 CDC 3400 Physical Characteristics PHYSICAL CHARACTERISTICS § 211. Unit 3404 Central Computer 3401 Console 3409 Core Storage Module 3406 Data Channel Power Control All Magnetic Tape Controllers 3446 Peripheral Controller 3691 Paper Tape ReaderPunch 405 Card Reader 604, 607 Magnetic Tape Units 828 Disk File Width, inches Depth, inches Height, Weight, inches pounds 83.8 46.0 40.8 40.8 40.8 45.0 40.8 40.0 20 28 20 20 20 27 20 24 75 40 75 75 75 75 75 39 57.0 28.0 68.3 33 33 35 46 72 63 Power, KVA BTU per hr. 1,800 500 950 950 950 950 950 400 1.8 0.5 1.0 1.0 1.0 1.0 1.0 0.6 3,300 3,300 5,250 5,250 4,300 5,250 5,250 2,000 1,020 1,200 2,575 ? ? 3.5 8,730 8,500 ? General Requirements Temperature: . . . . . . . . . . . . . . . . . . . . . 65 to 85°F. Relative Humidity: . . . . . . . . . . . . . . . . . .·40 to 60%. Power: . . . . . . . . . . . . . . . . . . . . . . . . . . 208/120 volt, 3-phase, 4-wire, 60-cycle source. @1964 Auerbach Corporation and Info,lnc. 5/64 246:221.101 ~ ~ CDC 3400 Price Data PRICE DATA § 221. PRICES IDENTITY OF UNIT CLASS STORAGE AND COMPUTATION No. 3404 3409 3410 3401 COMMUNICATION 3404 3407 3408 3681 3682 INPUTOUTPUT 3447 405 3446 3256 501 3253 3691 3692 3293 3421 3422 * Name Monthly Rental Monthly Maintenance Purchase $ $ $ Central Computer; including maintenance control panel, power converter and control, and 16,384 words of magnetic core storage. 32K Storage Option; 16,384 additional words of core storage. Floating Point Option; provides single precision floating point instructions. Console; includes input/output typewriter. 13,750 Standard Data Channel Sp.ecial 24-bit Data Channel* Special 48-bit Data Channel * Data Channel Converter; permits 160/160-A to use 3400 peripheral equipment. Satellite Coupler; permits direct connection between any two standard 12-bit bi-directional channels or Data Channel Converters. 1,100 1,250 1,400 275 Card Reader Controller; controls CDC 405 Card Reader Card Reader; 1,200 cpm Card Punch Controller; controls an IBM 523 or 544 card punch Line Printer Controller; controls one 501 printer High-Speed Line Printer; prints 1,000 lines per minute. Line Printer; 300 lines per minute Paper Tape Reader-Punch; 350 cps reader and 110 cps punch Program Controlled Input-Output Typewriter Incremental Plotter Magnetic Tape Controller; two read-write controls to control one to four 604/607 Magnetic Tape Transports Magnetic Tape Controller; two read-write controls to control one to six 604/607 Magnetic Tape Transports 525 ? 622,000 3,500 165,000 800 34,000 720 33,500 ? 16,200 415 ? 550 645 715 ? 1,750 22,000 57,400 ? 280 285 1,250 24,500 30,250 31,500 1,167 735 640 49,500 56,500 63,500 10,800 36,735 25,000 11,000 ? 9,000 65,000 83,000 Available for special applications only. @1964 Auerbach Corporation and Info, Inc. 5/64 246:221.102 CDC 3400 PRICE DATA (Conld.) § 221. PRICES IDENTITY OF UNIT CLASS INPUTOUTPUT (Contd.) No. 3423 604 607 3632 3633 3634 3635 828 5/64 Name Magnetic Tape Controller; two read-write controls to control one to eight 604/607 Magnetic Tape Transports Magnetic Tape Transport; up to 60KC Magnetic Tape Transport; up to 120KC Disk File Controller; two readwrite-positioning controls for one 828 Disk File Disk File Controller; same as 3632 but controls up to two 828 Disk Files Disk File Controller; same as 3632 but controls up to three 828 Disk Files Disk File Controller; same as 3632 but controls up to four 828 Disk Files. Disk File; dual access. Monthly Rental Monthly Maintenance Purchase $ $ $ 2,250 ? 101,000 675 32,500 935 41,700 2,750 ? 110,000 3,050 122,000 3,350 134,000 3,650 146,000 2,800 122,000 / CDC 3600 Control Data Corporation AUERBACH INFO, INC. PRINTED IN U. S. A. CDC 3600 / Control Data Corporation AUERBACH INFO, INC. PRINTED IN U. S. A. 247:001.001 STANDAAO REPORTS CDC 3600 Contents CONTENTS 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Introduction . . . . Data Structure • . . System Configuration Notes on System Configuration . Configuration VI B: Paired 6-Tape Business/Scientific System. Configuration VII B: Paired 1O-Tape General System Configuration VIn B: Paired 20-Tape General System Internal Storage Core Storage Central Processor CDC 3604 Processor Console Console. IBM Selectric Typewriter Input-Output; General • • • • • • • • • • • • (General Arrangements, Timings, Interrupt Procedures, Input-Output, Compatibility) Input-Output, Punched Tape and Card CDC 3641 Card Reader. . . . . . CDC 3642 Card Punch . . • • . • Card Reader Controller. CDC 3643 IBM 088 Card Reader. • • • . . CDC 3691 Paper Tape Reader Punch • Input-Output: Printers CDC 3655 High Speed Printer • Input-Output: Magnetic Tape CDC 606 Magnetic Tape Unit • Input-Output: Other CDC 3681 Data Channel Converter. CDC 3682 Data Channel Converter. CDC 3692 Program Controlled Input-Output Typewriter Simultaneous Operations. Instruction List. . . . . . . • . Coding Specimens Machine Code COMPASS. FORTRAN . . Data Codes Collating Sequence • Internal . . . Magnetic Tape 1612 Printer • Problem Oriented Facilities Process Oriented Languages J3 1604 JOVIAL FORTRAN . FORTRAN 62 247:011 247:021 247:031.001 247:031. 1 247:031. 2 247:031. 3 247:041 247:051 247:061 247:061. 13 247:070 247:071 247:072 247:073 (INA) 247:074 247:075 247:081 247:091 247:101 247:101 247:102 247:111 247:121 247:131 (RIP) 247:132 247:133 (RIP) 247:141 247:142 247:143 247:144 247:151 241:161 (CDC 1604) 243:162 (CDC 1604-A) 243:163 (CDC 1604-A) RIP =Report in Process INA = Information Not Available © 1963 by Auerbach Corporation and BNA Incorporated 7/63 CDC 3600 247:001.002 CONTENTS (Contd.) 16. 17. 18. 19. 20. 21. 22. Process Oriented Languages (Contd.) FORTRAN 63 . • COBOL • • • • • CXA (Control Data Extended ALGOL) Machine Oriented Languages COMPASS. Program Translators JOVIAL COMPASS. COBOL FORTRAN-63 • FORTRAN-60 FORTRAN-62 Operating Environment Machine Code Monitor System Perfqrmance Notes on System Performance Worksheet Data • • • . • • • Generalized File Processing • Sorting. •• • . • . . . • Matrix Inversion . • • • . • Generalized Mathematical Processing Generalized Statistical Processing . Physical Characteristics Price Data • . • • • . • • • • • . • . • • . . . . • INA = Information not Available 7/63 243:161 (CDC 1604-A) 243:162 (CDC 1604~A) 243:163 (CDC 1604-A) 247:171 241:181 243:181 243:182 243: 183 243:184 243:185 (CDC (CDC (CDC (CDC (CDC (CDC 247:191 (INA) 247:192 (INA) 247:201.001 247:201.011 247:201.1 247:201.2 247:201.3 247:201.4 247:201.5 247:211 247:221 1604} 1604-A) 1604-A) 1604-A) 1604-A) 1604-A) 247:011.100 CDC 3600 Introduction \ I NTRODUCTI ON § OIl. The CDC 3600 computer system can perform nearly half a million additions per second, thus malting it one of the fastest commercially available internal processing systems. The core storage capacity ranges from 16,384 to 262,144 words (48 bits), and an elaborate data channel system featuring a separate communication module permits an almost indefinite number of peripheral units (or central processors) to be connected. For simultaneous operation standard systems can include up to 512 tape units. The cost of the 3600, which begins at $45,000, is lower than that of the IBM 7094 and Philco 212, and is higher than that of the UNIVAC 1107 and the H-1800. Although the 3600 is basically an advanced version of the CDC 1604 large scale computer system, a number of changes have been made to the CDC 1604 central processor design. Primarily, these changes include instructions which handle parts of words, or "bytes". The performance characteristics of the system are thereby greatly changed and the processing times for many of the problems used as central processor performance criteria, even without considering the faster internal core storage (1.5 compared to 3.2 microseconds), have improved by 70 percent compared to those for the same functions on the 1604. A number of additional instructions have been included in the 3600 that do not exist in the 1604. These instructions include double precision floating point arithmetic, the ability to perform double indexing of operands, etc., and are particularly valuable in matrix calculation programs. However, they do not have the same impact on the over-all system performance as the byte-handling capabilities. CDC 1604 programs can be run on the 3600, but the reverse is possible only under restricted circumstances. FORTRAN 63, CXA (a version of Algol 60), and COBOL-61 translators are being made available for both computer systems; thus programs written in these languages can be compiled for either system. Across the board programming compatibility is restricted to that which is obtained by use of common languages: FORTRAN, COBOL, and ALGOL. For details, see the sections describing these languages. The magnetiC tape codes and the internal BCD code for the CDC 3600 and 1604 are identical to those for the IBM 7090 and 7094 systems with IBM 729 tape units. Tapes can be exchanged between the systems; i. e., the CDC 606 tape unit can use magnetiC tape reels written by IBM 729 units and vice versa. The 3600 central processor is an improved version of its equivalent CDC 1604 unit. The improvements have been designed to retain compatibility with the 1604, yet give muchimproved performance. Several powerful instructions have been included in the 3600 repertoire, two of which act on other ordinary instructions to permit the programmer to perform many extensions of the basic instruction. For instance, complementation, clearing the operational source, and changing the sign, can all be performed simultaneously with addition or subtraction. The main improvements incorporated into the 3600 are the double precision operations, byte operations, the new D (or Flag) Register, and the table and list instructions: o Double Precision Floating Point operations with 84-bit mantissas are possible. o Byte- handling instructions process parts of words and considerably reduce the housekeeping involved in such things as code conversions and almost all types of character handling operations. © 1963 by Auerbach Corporation and BNA Incorporated 4/63 CDC 3600 247:011.101 INTRODUCTION (Contd.) § 011. • Bit-directed facilities. Single bits can be tested, set, and branched upon when encountered. These facilities also can direct a I-instruction, 49-way branch which scans a 48-bit word and jumps to a position based on the most significant I-bit. Used in conjunction with the input-output and other control registers, this feature considerably reduces the time involved in getting through a network of subroutines. Again, the improved performance comes from the elimination of housekeeping efforts rather than the faster computation. • Table-searching and list-construction instructions Single instructions can automatically search tables (within limits) for the following conditions within 2 microseconds: equal, not equal, greater than, less than. Search instructions can handle any character size from 1 to 48 bits. A list held in a specific prescribed form can be created and changed continuously. Input and output are controlled by means of Communication Modules. Rates of up to 133,000 characters per second are always possible, even under worst-case conditions; however, at present no character rate greater than 83,000 characters per second is available. The Communication Modules have direct access to each 16, 384-word bank of core storage, which means that the central processor is delayed during input-output operations only if both the input-output and the central processor are attempting to access the same core storage bank. The basic system has 2 banks, and expanded versions have up to 16 banks. Each of the core storage banks initiates its word cycle independently of the others. This provides for asynchronous operation if different banks are used. Although the cycle time (1.5 microseconds) is fixed, the extent to which each bank is used is determined only by the program. For this and other reasons, the actual times quoted for an instruction are only approximate. Changes in speed of up to 20 percent are pOSSible, depending upon the actual Situation, and should be anticipated by each installation manager. Peripherals for the 3600 system which have been announced include CDC 606 Tape Units, two card readers (one IBM, one CDC), paper tape equipment, a card punch, and a 1,000 line per minute printer. Full details are available only for the tape units and the IBM card readers. The other announced units are apparently similar to their predecessors as used in the 1604 system. These peripherals provide for three types of interrupts within the central processor, and for automatic translation to and from internal binary coding. The means for connecting magnetic tape units into 3600 systems are much more flexible than in the 1604. Two, three, or four tape units per controller can be used at one time, and no restriction now exists as to how many units can be reading and how many can be writing. All can be reading or all can be writing. or any mixture of the two modes of operation can be utilized. Direct Data Communication links are available for the 3600 and two controllers are available which link the 3604 Central Processor to one or more 160 or 160-A computers. Development appears to have been concentrated on providing controllers fur peripheral units. A comprehensive body of software exists insofar as a number of routines, assemblers, supervisors, etc., have been developed for the CDC 1604, which can therefore be run with little or no modification on the 3600. Faster processing will be achieved, but no advantage will accrue to the user from the new specialized instructions. Details of these routines are given in the report on the CDC 1604-A (Report 243:). New software for the 3600 includes: ,/ • 4/63 A run-to-run supervisory Master Control System, which supervises the inputoutput handling, interrupts, relocation, etc., but deals with only one program at a time. In view of the high processing speeds of the 3600, these often take little running time, so that routines like this which reduce operator delays become of greater importance. \ I AUERBACH I ~ 247:011.102 INTRODUCTION INTRODUCTION (Contd.) § 011. Search operands can be indirectly addressed, os that a search can be conducted even when the keys are scattered, provided their addresses are listed in a table. • FORTRAN-63. An advanced FORTRAN language which is compatible with the FORTRAN 63 of the CDC 1604-A. The translator is specialized with subscripts to deal economically with expressions and provides buffer control for the FORTRAN programmer. The FORMAT statement is still handled interpretively at running time by being scanned each time it is encountered. • An ALGOL dialect, CXA, to be released in 1963. • A COBOL-61 Compiler, to be released late in 1963. \ '- © 1963 by Auerbach Corporation and BNA Incorporated 4/63 247:021.100 CDC 3600 Data Structure DATA STRUCTURE § 021. .1 .2 DATA FORMATS Type of Information STORAGE LOCATIONS Representation Operands: •• Name of Location Size Purpose or Use Word: 48 bits Character: Block: 6 bits 1 to N words basic addressable unit; contains data item or two instructions. internal BCD code. magnetic tapes. © 1963 48-bit fixed point words. 48- or 96-bit floating point word. Instructions: • . . . . . 24 or 48 bits. 24-bit instructions are packed two per 48-bit word. Fixed Point: ••.• 47 data bits plus 1 sign bit. Floating Point (Single Precision): 36 bits plus sign for fixed point part 11- bit exponent. (Double Precision):. 84 bits plus sign for fixed point part 11- bit exponent. by Auerbach Corporation and BNA Incorporated 4/63 247:031.001 • STANDARD EDP • CDC 3600 System Configuration REPORTS NOTES ON SYSTEM CONFIGURATION § 03l. The CDC 3600 system is organized along four basic lines: 1. The Core Store The core store consists of from one to sixteen 16, 384-word modules. Each module has independent access to all computing modules and communication modules. 2. The Computing Modules and the Communication Modules At least one of each, and at most a combined total of five can be used in a system. Note that these modules act in parallel; thus, it is not necessary for input or output data to pass through the computing modules while passing between the core store and the peripheral units. 3. Data Channels From one to eight data channels can be connected to each communication module. Each channel added allows one further data transmission to proceed in parallel. 4. Peripheral Units, Controllers and Adapters A combination of up to eight peripheral units, controllers, and adapters can be connected to anyone channel. Each controller can control up to 16 units, depending on the design of the actual equipment. Additional bits are available which would theoretically allow 512 units to be referenced by each controller. Peripheral units, such as printers, card readers, etc., can be connected directly to the data channels. Adapters to connect the data channel with satellite computers, data transmission devices, etc., can also be connected. It is not necessary for the adapter to connect the satellite computer directly to the store, although this can be done. If required, the connection can be to other input-output'devices connected to the communication module. © 1963 by Auerbach Corporation and BNA Incorporated 4/63 .~_D BDP • 247:031.100 REPORTS CDC 3600 System Configuration SYSTEM CONFIGURATION § 031. ; . \\ .1 PAIRED 6-TAPE BUSINESS/SCIENTIFIC SYSTEM (CONFIGURATION VI B) Main Computer direct connection to auxiliary computer. 1 additional magnetic tape transfer while computing. 1 additional input/output transfer while computing. 3 extra index registers. Deviations from Standard Configuration: Equipment Rental Model 3603 Storage Module 32,768 words core store. $14,360 Model 3604 Computation Module including Real Time Clock: 20,755 Model 3602 Communication Module. 3,255 4 Model 3606 Standard Bi-directional Data Channels. 3,600 .Console including: Typewriter, 10 char/sec; 1,790 I I I I I I t I Model 3641 Card Reader: 250 cardS/min. I I 695 I I I I CDC 3621 Magnetic Tape System with 4 mllgnetic tape units; peak speed 83,000 char/sec. I I I I I I CDC 3667 Power Convertor and Power Control I I L ______________ - - - - - - - - - 2,700 3,300 795 ...e- --- ------ -- ----- ----- --~ . To Auxiliary Computer TOTAL $51,250 TOTAL, including both computerR $S8,599 © 1963 by Auerbach Corporation and BNA Incorporated 4/63 247:031.101 § CDC 3600 031. Auxifiary Computer Deviations from Standard Configurations: direct connection to main computer 12- bit words extra storage. faster printing (1, 000 instead of 500 cards/min. ) slower card-reading (250 instead of 500 cards/min. ) multiply/divide included. typewriter output. paper tape input and output. Equipment Rental Core Storage: 12- bit words. CDC 160 Computer Central Processor: $1,762 Console including: Typewriter, 10 char/sec; Paper Tape Reader, 350 char/sec; Paper Tape Punch, 110 char/sec. CDC 167 Card Reader: 250 cards/minute 400 CDC 1609 Card Read/Punch Unit: 100 cards/minute 1,175 CDC 1612 Line Printer: 1000 lines/minute 1,840 CDC 163-2 Magnetic Tape Unit with 2 tape units; peak speed 30, 000 char/sec; 1,482 CDC 3681 Data Channel Converter CDC 3682 Satellite Compiler 275 415 To Main Computer TOTAL 4/63 $7,349 247:031.200 SYSTEM CONFIGURATION § 031. .2 PAmED 1O-TAPE GENERAL SYSTEM (CONFIGURATION vn B) Main Computer Direct connection to auxiliary computer. tape units 40 percent faster. Devia tions from Standard. Configuration: Model 3603 Storage Module 32,768 words core store Model 3604 Computation Module including Real Time Clock I I I $14,360 20,755 Model 3602 Communication Module 3,255 4 Model 3606 Standard Bi-directional Data Channels 3,600 Console including: Typewriter, 10 chari sec: 1,790 I I I I Model 3641 Card Reader: 250 cards/min. I I 695 I I I I I CDC 3261 Magnetic Type System, with 8 CDC 606 tape units; peak speed 83,400 char/sec: , I I I 2,700 6,600 CDC 3667 Power Converter and Power Control 795 TOTAL $54,550 I L ________________________ ~.------------------- ( To Auxiliary Computer TOTAL, including both computers: $61,899 © 1963 by Auerbach Corporation and BNA .Incorporated 4/63 247:031.201 § CDC 3600 031. Auxiliary Computer Deviations from Standard Configurations: . • • • ~ • . . . . •• direct connection to main computer 12-bit words extra storage. faster printing (1, 000 instead of 500 cards/min.) slower card-reading (250 instead of 500 cards/min. ) multiply/divide included. typewriter output. paper tape input and output. /' Equipment C:ore Storage: 12-bit words CDC 160 Computer Central Processor: $1,762 Console including: Typewriter, 10 char/sec; Paper Tape Reader, 350 char/sec; Paper Tape Punch, 110 char/sec. CDC 167 Card Reader: 250 cards/minute :\ II -~-m To Main Computer 4/63 400 CDC 1609 Card Read/Punch Unit: 100 cards/minute 1, 1,75 CDC 1612 Line Printer: 1000 lines/minute 1,840 CDC 163-2 Magnetic Tape Unit with 2 tape units; peak speed. 30.. 000 char/sec: 1,48.2 CDC 3681 Data Channel Converter 275 CDC 3682 Satellite Compiler 415 TOTAL $7,349 247:031.300 SYSTEM CONFIGURATION § 031. PAIRED 20-TAPE GENERAL SYSTEM (CONFIGURATION VIIm) .3 Main Computer direct connection to auxiliary computer 4, 000 48- bit words extra storage. tape units 30 percent slower. Deviations from Standard Configuration: Model 3603 Storage Module 32,768 words core store. $14,360 Model 3604 Computation Module including Real Time Clock. Model 3602 Communication Module. I I I 20,755 3,255 6 Model 3606 Standard Bi-directional Data Channels 5,400 Console including: Typewriter, 10 char/sec: 1,790 I I I I I I Model 3641 Card Reader: 250 cards/min. I 695 r I I CDC 3624 Magnetic Tape Systems, each with 16 CDC 606 tape units; peak speed 83,600 char/sec.: I I I I I I I I I I 4, 750 13,200 CDC 3667 Power Converter and Power Control. 795 I I I I ________________________. _ .______________ _ L To Auxiliary Computer © TOTAL $65,000 TOTAL, including both computers: $73,910 1963 by Auerbach Corporation and BNA Incorporated 4/63 ~47:031.301 § CDC 3600 031. Auxiliary Computer Deviations from Standard Configurations: .direct connection to main computer 12- bit words extra storage. faster printing (1,000 instead of 500 lines/min. ) slower card-reading (250 instead of 500 cards/min. ) multiply/divide included. typewriter output. paper tape input and output. Equipment Rental Core Storage: 8, 19212-bit words CDC 160-A Central Processor: $2,250 Console including: Typewriter, 10 char/sec; Paper Tape Reader, 350 char/sec; Paper Tape Punch, 110 char/sec. CDC 167 Card Reader: 250 cards/minute 400 CDC 170 Card Punch Controller IBM 523 Card Punch 335 85 CDC 1612 Line Printer: 1000 lines/minute ..( I ) To Main Computer 4/63 1,840 CDC 162-2 Magnetic Tape System with 4 tape units; peak speed 82,300 char/sec; 3,300 TOTAL $8,910 700 247:041.100 • STANDARD EDP • CDC 3600 Internal Storoge Core Storoge REPOllTS INTERNAL STORAGE: CORE STORAGE § 041. · 13 .1 GENERAL • 11 Identity:. Core Storage, Model 3609. .12 Basic Use: working storage. .13 Description The input-output capacity of each 16, 384-word storage bank is approximately 5 six-bit characters per microsecond, which is approximately 60 times the data transmission rate of a CDC 606 tape unit. As noted above, if a system requires additional input-output storage capacity, this capacity can be obtained by adding another storage bank. The core store of the CDC 3600 system consists of from 1 to 16 storage modules. Each module contains 16,384 48-bit words, and is connected to all the computing modules and the communication modules in the system. The bank address is manually set by means of a rotary switch on the cabinet. Physically, two 16,384word banks are contained in one cabinet, which is called a 3603 Storage Module. This use of bank addresses is a restriction only insofar as: These connections are direct and independent of the connections between the same units and other storage modules. Thus, it is effectively possible to: (1) an additional instruction is needed to change the bank from which either operand or instructions are being chosen,' and (1) Avoid delay in computation by overlapping the access times of multiple banks. (2) both base operand addresses in an instruction pair must be taken from the same bank. (2) Add additional input-output capability to a system simply by adding more storage banks. The time spent in accessing these banks can, if needed, be totally overlapped with the time used to access the original banks of the system. Parity bits are carried with each word. The three parity bits which are used are formed from parts of the word as used in instruction pairs. Thus, one bit is logically attached to each operand address, and one bit is attached to the two operation code portions. Words ;ire divided thus whether or not they are actually to be used as instruction pairs. The cycle time of each bank of store is 1. 5 microseconds. The effective cycle time of the store while being used for computation is approximately 1 microsecond, taking into account the overlapping of the bank containing the instructions and the bank containing the operands. (It is assumed'that these are normally in different banks.) '. \. Description (Contd.) Core storage banks are called "overlapped" whenever the cycle of one proceeds simultaneously with but independently of the cycle of another. This normally occurs when an operand is requested from one core bank very soon after one has been read from another independent bank. Since the operand which was read becomes available when the read/rewrite cycle is only about one-third complete, it is possible (and the 3600 is able) to be ready for the next operand before the cycle is completed. When this occurs, time can be saved by requesting the second operand from an independent store whose read/rewrite cycle can be initiated before completion of the cycle that obtained the first operand. The CDC 3604 central processor normally requests data from two banks. the instruction bank (I) and the operand bank (0), in the order: (I), (0), (0); (I), (0), (0). Fetching of the instruction is always a read operation; therefore, access to the first operand is always overlapped with the instruction cycle. However, the second operand, since it is in the same bank, is not overlapped. © 1963 .14 Availability: . . 7 months. .15 First Delivery: 1963. .16 Reserved Storage: • none. .2 PHYSICAL FORM . 21 Storage Medium:, • .22 Physical Dimensions . magnetic cores. .221 Magnetic core type storage Core diameter:. ? Core bore: . ? Array size:. • . •. ? .23 Storage Phenomenon: • 24 Recording Permanence · 241 Data erasable by instructions: . . .242 Data regenerated constantly: • . . .243 Data volatile: •• • 244 Data permanent: . . 245 Storage changeable: by Auerbach Corporation and BNA Incorporated direction of magnetization. yes. yes. no. no • no. 4/63 CDC 3600 247:041.270 § 041. .27 • 28 • 52 Interleaving Levels: • Access Techniques • 281 Recording method: • • 282 Reading method: • • 283 Type of access: •. • 29 none within 1 bank. The use of multiple core storage banks effectively provides interleaving, reducing access time to approx. 1 ,",sec. coincident current . sense wire. read out followed by rewrite. Potential Transfer Rates · 292 Peak data rates Cycling rates: Unit of data: Gain factor: up to 667, 000 cps per bank. one 48-bit word. use of 2 or more 3609 stores. 667,000 words/sec/bank. Data rate: Compound data rate: • 667,000 to 21,333,000 words/sec, depending on nmnber of banks connected. .53 Simultaneous Operations: • accesses to each store are asynchronous and independent of each other. Access Time Parameters and Variations .531 Cycle time: • . . . . . 1. 5 ,",sec. For data unit of: • . • . 1 word. 2 instructions • . 532 Variation in cycle time: see introduction. .6 CHANGEABLE STORAGE: . . . • . . none • .7 STORAGE PERFORMANCE · 71 Data Transfer Pair of storage unit possibilities With self:. • • • • . . yes. .72 Transfer Load Size any number of words, using the transmit instruction. With self: . • . • . · 73 Effective Transfer Rate With self: • . • . • • • 385,000 words/sec . •3 DATA CAPACITY • 31 Module and System Sizes .4 .8 48-bit words: . . . 24-bit instructions: 32,768. 65,536. CONTROLLER: . . no separate controller. .5 ACCESS TIMING .51 Arrangement of Heads: 4/63 each 16, 384-word store has independent access facilities. ERRORS, CHECKS AND ACTION Error Check or Interlock Receipt of data: address parity check Recotding of data: Action computer halted if parity Is incorrect. 3 parity bits tecotded none at this stage. with data word Recovery of data for transmission to computing module: parity check console lamp lit, and optional interrupt. Recovery of data for transmission to output: parity check parity check bit set, with optional interrupt. 247:051.100 CDC 3600 Centrol Processor CENTRAL PROCESSOR § 051. .12 .1 GENERAL .11 Identity: .12 Description Central Processor. CDC 3604. The 3600 is a single-address, fixed word length, binary processor. Many instructions take under 2 microseconds, and each module has the capability for executing approximately 600, 000 instructions per second. Arithmetic operations are performed in binary on 48-bit words. The operations are performed in a parallel mode. Each word normally contains a pair of 24-bit single address instructions but other instruction lengths are also used. The' address of an instruction can either be indexed or used as an indirect address. Three index-bit positions are provided in each instruction to select one of six index registers. However, one value of the index-bits specifies an indirect address, and indirect addressing may be recursive. Operations are provided both in fixed point and in single and double precision floating point. Fixed length operands are 48 bits in size while floating point operands consist of an 11- bit characteristic and sign plus 84 or 36-bit fixed point parts. Both integral and fractional fixed point multiplication and division are provided. Indexing by means of anyone of the six index registers is available to almost all instructions. Increments from 1 to 32,768 words can be indexed, but provide access to the entire store only when a single 32,768 word module is attached. The augment instructions are 24-bit instructions which modify the succeeding 24-bit instruction. This is a powerful device which has been used, among other things: (1) To provide double precision floating point instructions by modifying the basic floating point instruction. \ \ (2) To provide double indexing capabilities for most 24-bit instructions. The resultant operand address used in execution of the modified instruction is computed by adding the contents of the index register specified by the augment instruction to the address of the actual instruction which can itself have a specified index register. Thus the instruction pair "Augment, index register 3; ADD, index register 4, 00500" executed when index register 3 contains 30, and index register 4 contains 4, would add the contents of 00534 to the contents of register A. (Indirect addressing is available as an alternative to direct indexing in both the augmenting and augmented instruction. ) © 1963 Description (Contd.) (3) To direct which of a number of modifications to standard instructions should be used. The actual modifications available are related to the actual instruction; typical examples are: to not round results, to not normalize resultJ3, to ignore the sign of the operand, to clear the operand location to zero after loading the operand into the register. Thus, if the instruction pair used in the example above were amended to read, "Augment, index register 3, t 4 ; ADD index register 4 00500" then the complement of the contents of 00534, not the contents themselves, would be added. A number of other, more complicated instruction modifications are available and their use will reduce the over-all number of instructions which must be executed. The Execute Instruction, which itself can be augmented to provide a double-indexed instruction address, executes the instruction pair at specified locations, and then returns to normal sequencing. As the instruction pair itself can use one or two index registers, it is possible to design very short central loops involving a number of variaabIes. This approach has been used in estimating the time for the standard statistical problem. Here, in preparing a table, it is necessary to compute the address (x - 1) + X(y - 1). Normally, multiplication is required but this has been avoided using the augment techniques. (See also Users' Guide.) Further details of many of these instructions are given in the Instruction Code section of the report and reference should be made to that section. Searching can be done by word or by byte t, with the housekeeping being performed within the logic of the instruction. Conditions which can be searched for include equality, inequality, more than, and less than. The byte-handling facilities, in addition to being used in search operations, also can be used in Transmit and other bit-based or character-based operations, such as editing and code conversion. One of the major gaps in the instruction repertoire of the CDC 1604 is thereby filled. Additional instructions which enhance the bit and character handling capabilities of the 3600 are the InterRegister Transmit and the Register Jump instruct.ions. The registers concerned include those used in computation, some temporary storage registers, and those reflecting external conditions. These registers can t A "byte" is part of a computer word, consisting of from 1 to 48 bits. These bytes can be measured from either the most Significant or the least significant end of the word. by Auerbach Corporation and BNA Incorporated 4/63 247:051. 120 § CDC 3600 • 213 Boolean 051. AND: Inclusive OR: Other logical and mask-type operations: automatic automatic binary 1 word. 1 word. .12 Description (Contd.) .13 be tested, interchanged, complemented, etc., as . automatic 1 word. necessary within a single instruction and by the Jump On Flag instruction, (which jumps to the one of 48 po- .214 Comparison Numbers: • yes by word or by byte. sitions, if any of the 48 bits of the register are set at • yes by word or by byte. Absolute: "I"). Letters: • yes by word or by byte. yes by word or by byte. Mixed: • . Increased processor speeds are normally achieved by .215 Translation Code the use of two storage banks. ntese banks can be Code translation from external BCD to internal BCD overlapped only by taking instructions from one bank normally is automatically provided when magnetic and data from another. tapes recorded in BCD are being read. This is not done in 1604 mode so as to maintain compatibility Because of the overlapped stores, execution time for with the CDC 1604. individual instructions and sequences of instructions can vary up to 25 per cent above and below average. Code translation between Hollerith coding and interIt is possible, however, to take some advantage of nal BCD is a function of the input-output controller the timing variations by careful planning. The realconcerned, and details on this are given in the intime clock system has two registers. One contains put-output section. the clock itself, and is automatically incremented .216 Radix Conversion each millisecond; the other is a Time Limit register. Radix conversion between BCD, fixed point binary, The programmer can arrange for interruptions when or floating point binary (single precision or double the contents of these are equal; he does not have to precision) is performed by standard program subwait until the actual clock location overflows. routines. Timing details are not available and will depend considerably on the amount of storage which Running more than one program at a time can be can be allocated to the routines; however, 50 miachieved by the usual method of adding additional croseconds per number (of 1 through 8 digits) concomputing modules. However, a number of regisverted fixed point appears to be a conservative estiters in the processing module make it possible to mate for ~D binary conv~rsion, and 30 microsecachieve multi-running safely within the same computonds for fixed point to floating point conversion. ing module. These are the bounds registers, which Edit Format: .'. • . . . own coding• • 217 prescribe upper and lower limits of an area that can .218 Table Look-Up be used for instructions and data. Reference to data Tables in the 3600 may be stored in three ways, deoutside these limits can be made" but no instruction pending on the item size. 'If the item is less than 25 cali be taken from the out-of-bounds area. The acbits the bits are packed together into a series of tual programs can be sequenced by means of the incontiguous words, with as many items in a single terrupt system, using either the real-time clock or word as 'pOssible. The item size is defined as a the input-output interrupts to initiate change overs. "byte"and the search is made byte by ~yte; with the search instruction going from word to word as Availability: • . .'. ? needed. .14 First Delivery: .2 PROCESSING FACILITIES .21 Operations and Operands 1963. Operation and Provision Variation .211 Fixed point Radix Size automatic binary 1 word. none. automatic binary 2 words. automatic binary 2 words. automatic binary 2 words. Add-Subtract: automatic binary Multiply: automatic Divide: automatic Add-Subtract: Multiply Short: Long, Integtal: Divide No remainder: Remainder, integral: Remainder, fractional: none. If the items of the table between 25 and 48 bits (one word), they are stored separately in consecutive words. If the item is longer than a word, an integral number of words is allocated to each item,. and the search is handled by incrementing the startmg address by a fixed increment (the item size) between each key word to be searched. .219 List Search Lists are treated in the CDC 3600 by using part of one item to store the address of the next element in the list. The arrangement of the actual items and addresses is not matetial, so that items can be included in ,or dropped from a list by altering one address only. Lists cannot be searched by a single instruction, but items can be automatically counted and thus the address of the nth item can be determined. .212 Floating point 4/63 36 & or 84 & binary 36 & or 84 & binary 36 & or 84 & 11 bUs. 11 bits. 11 bits. 11 bits. 11 bits. 11 bits. • 22 Special Cases of Operands .221 Negative numbers:. .222 Zero: • . . . . • . • I AUERBACH! .$J l's complement. positive zero and negative zero. CENTRAL PROCESSOR § 247:051. 223 051. .231 Instruction structure (contd. ) • 223 Operand size determination: • 23 • The Register Jump Instruction 62. variable may be described in bytes or in 48 or 96bit words. • The Table Search and List Element Locate instruction 63. Instruction Formats • The Bit Sensing and Byte handling instruction 63. • 231 Instruction structure The normal instruction on the CDC 3600 is a 24-bit instruction. This is illustrated below and described in Paragraph 232. A number of instructions use different codes. These include: • The Inter Register Instructions (00; with its subsidiary instructions 000 through 006, which control arithmetic or logical operations; instruction 007 which can be a Transmit or Swap operation). 23 1817 • The Bank Jump instructions 63. • The Input-Output instructions 74. These are illustrated below; but their structure is not further described here. Details on these are given in the Instruction List. .232 Instruction Layout o -BIT 15 14 m.Y or k INSTRUCTIONS DESIGNATED BY THREE-LETTER MNEMONICS '--_v-.....''--y-J '=00 o-BIT ~----~~~~----------------~~~~~--~r-----------------~ OPERAND * JUMP ADDRESS '-62 m o-BIT 14 ~----~~rT=---------------~~-=~~~~~--------------~ JUMP ADDRESS * ADDRESS m USAGE O-SIT r---------~~--------------~r_----~--_.------~--------__,*. REJECT JUMP ADDRESS STORAGE ADDRESS ~~\------~------~~'--y-J\~----~ \. '=74.2 m Q v CONTROL WORD ADDRESS 15 !'"_______ 1:""_' ... ___T_ION ___ C_OD_E_... ---'r-'· O_PE_R_A_ND ______ ~\~-------v---------J '=77.3 * Described in Instruction List (Section © 1963 :121). by Auerbach Corporation and BNA Incorporated 4/63 CDC 3600 247:051.233 OS1. • 233 Instruction parts Designator a First Bank Address § • 235 Literals Arithmetic: . Incrementing modifiers: • IS-bit address part. Use IS-bit address part. With first storage address. 'm'. specifies · 236 Directly addressed operands an 18-bit composite • 2361 Intetnal storage storage location. Type: •••••••• core. b First Index Specifies index register Size: • • • . • . . • . 48 bits or 96 bits. (B) 1,lsed, or whose conVolwne accessible: . 1 bank of 16.384 words. tents are used iil the • 2362 Increased address operation. up to 16 banks referenced capacity: . . . d Bank Address Indicates whether or not by change of bank Usage bank address designa- : indicator. tors ('a' or 'i ') will be .237 Address indexing interpreted in the oper- • 2371 Nwnber of methods: 1. ation (if d = 0, not used. 2373 Indexing rule: • • . . addition modulo store size. d = I, used). 2374 Index specification:. 3-bit positions within the inf Function Code A 6 or 9-bit code (destruction to be modified, or pending on the operain a previous instruction. tion) which specifies • 237S· Nwnber of potential the operation to be indexers: • . • . . 6. performed. .2376 Addresses which can Condition j Conditions operations in be indexed: • • . . • operand addresses in arithjwnps and stops. metic, logical, load, and k Unmodified Nwnber of shifts to be store instructions. Shift Count executed. shift counts. Unmodified m Address of operand. jwnp locations. Execution .2377 Cwnulative indexing: • yes, more than 1 index regAddres s (Adister can be involved. ress One) .2378 Combined index and n Address Two Usually used as a jwnp none. step: • • . . . . • address. .238 Indirect addressing Operand One p Register which holds • 2381 Recursive: . yes. first operand in Inter- .2382 Designation: . . . "7" configuration of the inRegister and Register dex designator character Jwnp instructions. of the instruction. The q Operand Two Register which holds new address and index second operand in Inregister is that of the ter- Register instruclower instruction in the tion. designated word. r Destination Register to which result • 2383 Control:. . . • . . . • the last address in the reis sent after specified cursive sequence specifies operation is complete. a direct address; i.e., s Sub-operation Specifies one or more other than a "7" index Code sub-operations to be designator in the lower inperformed. (See indistruction of the word. vidual instructions for • 2384 Indexing with indirect interpretations of's'. ) addressing: . . • . . only the last address in th~ x Channel Specifies data channel; indirect address chain Nwnber also used to specify may be modified by indexchannel whose status ing. will re read or sensed. · 239 Stepping Unmodified Used in execution ady 2391 Specification of Operand dress portion of inincrement: . . stepping instructions. struction; specifies this 2392 Increment sign: • minus, plus. address will be used as 2393 Size of -increment: minus unity, plus unity. or the operand. Specifies plus IS-bit literal in stepa IS-bit comparison ping instruction. quantity in Register 2394 End value: . . . . zero, equality. Jwnp instruction. Des- 239S Combined step and ignates the quantity test: • . . . . . . yes. used as an addend in Add to Exponent instruction. .234 Basic address structure: 1+0, with bank address taken from special register. 4/63 247:051. 240 CENTRAL PROCESSOR § 051. · 24 • 33 Special Processor Storage .241 Category of storage Number of locations 1 A Register: Q Register: D Register: 6 Index Register: Time Register: Time Limit Register: Size of Program usage bits 48 Main Accumulator. 48 Second Accumulator. 48 Used as temporary storage. 15 6 27 27 Interrupt Mask Register: 48 lnterrupt Register: 48 lnstruction Bank Register: 1 3 3 Operand Bank Register: 15 Product Register: Shift Count Register: 7 Miscellaneous Mode Register: 1 15 All "0": All "1": "+1": 1 1 1 48 48 48 .242 Category Total number of storage locations . All above: 21 Physical form ? SEQUENCE CONTROL FEATURES · 31 Instruction Sequencing • 316 Accessibility to routines: . . . Hold 6 Console Switch Flags. Constants. Access time (sec) ? ·3 . 311 Ntunber of sequence control facilities: . .315 Sequence control step size: • . . . . Real-Time Clock. Used to cause interrupts at speCific time. Inhibition of specific interrupts. Interrupts condition for 32 I/O channels and 16 internal conditiOns. Bank address added to obtain instruction address. Bank address added to operand address. Shows interrupt conditiOns which are not inhibited. Shift Count; destroyed when further instructions are executed. Cycle time ("sec) 0.25. r ~. • 32 • 33 Interruption The 13 internal interruptible conditions listed in Paragraph • 331 cause an interrupt only when a bit is in ~e appropriate position of the Interrupt Mask Register. Otherwise, they merely set a bit in the Interrupt Register. If the program has allowed the particular type of interrupt, the interrupt system is turned off, and a series of forced jtunps are made into the routine handling the specific condition. In all, it is possible for 16 different conditions to be serviced in this way, although, at present, only 13 are specified. Functionally, a typical interrupt has to unload and restore the operational registers it uses, and reactivate the interrupt system before returning to the main program. Typically, approximately 15 microseconds is required for each interrupt occurrence in addition to the time spent in the actual routine. External interrupts are more complex. Each data channel can cause an interrupt, which cannot be stopped by programming action. After this interrupt has occurred, three forced jtunps enter the routine associated with the specific data channel. It is necessary at this point to examine where the interrupt originated. This can be in the data channel itself (a parity error, or the end of a "chained" input-output operation) or in any of the eight units connected to the channel. Two additional forced jtunps are used to enter the routine concerned with the specific condition. If the interrupt originated from a specified equipment, it is necessary to read the 12-bit status data into one of the six index registers (which probably has to be unloaded for the purpose) and perform an additional jtunp before entering the routines. Otherwise, the overhead processing is similar to that for the internal interrupts, but amount to approximately 25 microseconds per interruption in addition to the time required to handle the actual condition. Subsequent to completion of the routine, the interrupt system is re-activated and any interrupt conditions which have acctunulated are examined prior to return to the major routine • 1 per processor module. 1 word; i. e., moves by instruction pairs . . 331 Possible causes In-out units: . yes, by means of a "Return Jinnp" instruction. · 317 Permanent or optional modifier: • . . . • • . yes, instruction bank address. Look-Ahead: • Interruption (Contd.) In -out controllers: • Program errors: . . none. The programmer has completed control of the interrupt system of the 3600 and is able to allow or disallow any or all of the interrupt conditions. Processor error: • The four main types of interrupts are: Other conditions: . Internal computing errors External conditions in each I/O unit. Special operating modes (e. g., 1604 mode which traps the 1604 instructions which are not available on the 3600, or the Trace mode). Real-Time Clock interrupt. © 1963 by Auerbach Corl'0ration and BNA Incorporated External Unit in "Ready", "End of File" or "Abnormal end of operation". The meaning of these items is as specified for each individual unit. pOwer off, missing, or nonfunctioning. over-capacity shifts. fixed and floating point operands out of range. division by zero. illegal instruction. illegal reference to locked out area of store. parity error in operand or instruction. time reading from RealTime Clock. Console Operator request. a jtunp instruction (when in Trace Mode). a non 3600 instruction (when in 1604 Mode). 4/63 247:051. 332 § CDC 3600 051. • 332 Control by routine Individual control: · 333 • 334 • 335 · 336 internal and controller interrupts which are specific in themselves, are set by masks. Method: . • • . . • . . external interrupts are individually chosen by function. Three functions are available for each individual unit. The 3640 Card Reader, for instance, can interrupt when ready, when end-of-file occurs, or when error has occurred. Each of these can be individually set or cleared by the program. If, however, more than one is set, then some cycles are used in addition to the normal interrupt overhead, in housekeeping prior to entering the interrupt routine. Operator control: . . • none. Interruption conditions: interruption condition. specific interrupt approved by program. interrupt routine not in progress. interrupt system activated. Interruption process Registers saved: . seqUence control register. Destination: . . . fixed location. Control methods Determine cause: 2 jumps, in standard sequence identify cause of interrupt OR data channel concerned. Enable interruption: program. .34 Multi-running: .• .35 Multi-sequencing .351 Method of control: . . 352 Maximum number of programs: • . . • 353 Precedence rules: • • 354 Program protection Storage: . . . • . see description. in general, by providing more than one computing module . 4 (this would allow only 8 data channels among all four computing modules). each independent and with equal access to all stores. bounds registers within each module gives upper and lower addresses beyond which reference cannot be made. Can be altered by program. In -out units: . . . . . none. 4/63 .4 PROCESSOR SPEEDS .41 Instruction Times in ,",sec .411 Fixed point Add - Subtract: Multiply: ••. Divide: • . • . .412 Floating point Add-Subtract: Multiply: •.• Divide: • . . . .413 Additional allowance for Indexing: . . . . . . Indirect addressing: Complementing: .. Double Precision Addition/Subtraction: Double Precision Multiplication: Double Precision Division: .414 Control Branch: . . .415 Counter control Step: . . . . . Step down and test zero: • . . • • • Step up and test equal: .418 Shift:. . . . • • . • •• .42 2.1 6.44 14.8 4.5 average. 6.4 average. 13. 0 average. none. 1. 0 average, per indirect reference. 0.1 2.23 22.1 14.1 2.1 1.1 2.07 1.69 1.44 Processor Performance in p.sec .421 For random addresses Fixed point Floating point c=a+b:... 6.0 8.4 b =a +b:. • • 5.3 8.4 Sum N items: • 2. IN 4. 5N c = ab: . . . . 10. 3 10: 3 c=a/b:.... 20.0 19.0 . 422 For arrays of data Fixed point Floating point ci =ai +bj:. • 9 11.4 bj=ai+bj:.. 8.4 11.4 Sum N items:. 2.25+ 4. IN 2.25 + 6. 5N c = c +aibj: • 15.76 15.76 .423 Branch based on comparison Numeric data: • 7.4 Alphabetic data: 7.4 .424 Switching Unchecked: . 4. 0 Checked: • . 15.6 List search: . . 6. 12 + 2. 38N . 425 Format control per character (inclUding BCO- binary conversion) Unpacking: • • . . .. 10 Packing: • • • • . .• 15 .426 Table look-up per comparison For a match: • 4. 12 + 2. 38N For greatest:. 2.38N (or 4.0 whenever new "greatest" is found). For least: • . 5.26N (or 5.1 whenever new "least" is found). For interpolation point: . . . • . . 2. 38N from most Significant end-of-table. 247:051.427 CENTRAL PROCESSOR § ·.5 051. .427 Bit indicators. Set bit in separate location: Set bit in pattern: Test bit in separate location: . . . . . Test bit in pattern: . Test AND for B bits: Test OR for B bits:. .428 Moving: •• . • • . . ERRORS, CHECKS AND ACTION Check or Interlock Error 1. 88 1. 88 1. 88 1. 88 6.4 6.4 290,000 48-bit words/second. check specific bit set, option-' 1•• interrupt OCCUIS; intel'··,._ system ~eactivated, instruction address stored, and forced jump to specific differing location for each case. } parity check specific bit set, optionally interrupt OCCUIS; interrupt system deactivated, instruction address stored, and forced jump to specific differing location for each case. Overflow: Underflow: Zero division: Shift fault: Out-of-bounds instruction: Out-of-bounds operand: Invalid instruction: Storage reference: Receipt of data: Internal reject: Abnormal end of operation on connected I/O device: Action J check specific bit set, optionally interrupt OCCUIS; interrupt system deactivated, instruction address stored, and forced jump to specific differing location for each case. " (" © 1963 by Auerbach Corporation and BNA Incorporated 4/63 .~AKIlARD 247:061.100 EDP • REroRTS CDC 3600 Console CONSOLE § 061. • 13 .1 GENERAL • 11 Identity:. Model 3601 Console . .12 Associated Units: IBM 731 Selectric Typewriter is built into the console desk. • 13 Description Description (Contd.) of 48 lamps. The surface of each lamp is labeled with the appropriate bit number and c:an be easily read. • The physical conditions inside each of the units, and whether or not the computer will shut off automatically if the temperature exceeds the limits prescribed for the computer • The operator has available to him: The operational and the maintenance consoles (see Figures 1 and 2) are mounted on the left and right extensions, respectively, of the V -shaped desk. It is assumed that either the operator or maintenance engineer will be occupying the console desk at one time. Each console handles only one computing module. If more are connected, special consoles' are needed. • Nine sense switches (which can be tested by programs while running) to reflect such information as a program requires about the requisites for the particular run. • An Interrupt button, which enables him to make any alterations required at any time via the keyboard. The operator can tell at a glance: • Whether a fault has occurred, and if so, which of 12 types it is. • Whether the computing module is operating in Standard mode, simulating a 1604, being used in Trace mode (probably for debugging), or is in an interrupt routine. • Which bits of the D Flag register are set. The display is arranged as an 8 by 6 rectangular array © 1963 • The Auto-load button, which loads and enters boot~ strap routines from a standard peripheral device. o An "Interlock Bypass" lamp which enables him to bypass the automatic shut-off when the temperature exceeds the ~ibed limits. The console has ample desk space, a good view, and adequate input-output facilities. Supplementary information can be obtained from the maintenance console. by Auerbach Corporation and BNA Incorporated 4/63 247:070.100 STANDARD REPORTS CDC 3600 Input-Output General INPUT-OUTPUT: GENERAL § 070. Each input-output unit in the 3600 system has: • Three different interrupt conditions which, with program permission can cause the program to be interrupted. • Twelve status bits, which provide the program with precise details concerning the current operating condition of the unit. Input-Output operations are initiated in the central processor, using the interrupt and status data of the individual unit as guides. The central processor defines the action to be taken (reading or writing), defines an input-output area, and transfers control to the communication module. At this point, the central processor is no longer affected until the operation is ended; however, it ~an obtain details of the status of the unit and of the portion of the instruction still to be performed at any time. It should be noted that a single instruction can cause many cards to be read to fill up the specified storage area. The delay to the program caused by any particular inp1,lt-output unit is literally zero if the input-output area is not in either the instruction core storage bank or the operand bank. The maximum delays are negligible except for the CDC 606 tape unit. When working at high density each tape will utilize one and a half storage cycles out of every hundred. If the same storage bank is used for input-output and for computation, computation can be delayed. The duration of the delay will be proportional to the use of the storage bank during computation. Under worst conditions, the delay will not exceed one and one half per cent of the elapsed time per CDC 606 tape unit. Other details of the maximum delay possible are given below. Input-Output Area is in the: Instruction Bank Operand Bank Instruction and Operand Bank t (%) (%) (%) 0.5 1.0 1.5 ffiM 088 Card Reader (650 cards/minute) 0.005 0.01 0.015 ffiM 088 Card Reader (250 cards/minute) 0.002 0.004 0.006 Punched Paper, Character Mode (350 frames/second) 0.02 0.03 0.05 line Printer (1,000 lines/minute) 0.012 0.025 0.037 Input-Output Unit :1= Each CDC 606 Tape Unit (83,400 char/sec) t i. e., the instructions and operands are in the same bank. :1= The Card Punch, Paper Tape Punch, Console Typewriter all take negligible times. © 1963 by Auerbach Corporation and BNA Incorporated 4/63 247:071.100 CDC 3600 CDC 3641 Card Reader INPUT-OUTPUT: CDC 3641 CARD READER § 071. .12 .1 GENERAL .11 Identity:.... CDC 3641 Card Reader. © 1963 Description The 3661 Card Reader is an adaptation of the basic CDC-manufactured card reader. (CDC 167 on the 160 systems; CDC 1617 on the 1604 systems). No details of its operational characteristics except its speed (250 cards per minute) have been released. by Auerbach Carporation ond BNA Incorporated 4/63 247:072.100 ·STAHDARD EDP _ CDC 3600 Inp uf-Output CDC 3642 Card Punch REPORTS INPUT-OUTPUT: 3642 CARD PUNCH § 072 . .12 .1 GENERAL .11 Identity:. . 12 Description . • . . • • CDC 3642 Card Punch. The only detail of infonnation on the 3642 Card Punch which has been issued is its operational speed (100 cards per minute). It can be assumed that the unit will have the ability to cause an interrupt on any of the three standard interruptible conditions for I/O units (Ready, End of File, Abnonnal End of Opera- © 1963 Description (Contd.) tion) and that the data channel concerned will also be able to initiate interrupts on parity errors, or at the end of a chained input-output operation (i. e. , Scatter-Read, Gather-Write) . Provided that there are sufficient data channels available, theoretically, there is no restriction on the number of card punches which can be included in the 256 possible units of input-output equipment which can be connected directly to the system. by Auerbach Corporation and BNA Incarporated 4/63 247:074.100 .STANDARn EDP • Rfl'QRTS CDC 3600 Input-Output Card Reader INPUT-OUTPUT: CARD READER § 074. .12 Description (Contd.) .1 GENERAL • 11 Identity: • .12 Description not occur when a particular punching code is sensed, but only when an input hopper becomes emptied and a switch is depressed by the operator. CDC 3643 Card Reader . IBM 088 Collator. Status bits monitor only four conditions: three standard ones (Ready, Busy, Hopper Empty) and one in which binary-coded (as opposed to Hollerith) cards are being read. The status bit acts as a safeguard against confusing the two types of cards (binary- or Hollerith-coded) which can be read. This card reader can read 650 cards per minute from either 1 or 2 card feeds with automatic translation of data to BCD form. If two feeds are used, the reading rate is doubled; however, the card read cannot be checked by the program in this case. Normally, both reading stations are used to read the same deck of cards in order to permit an internally programmed card comparison. This action takes approximately 40 microseconds and the ensuing conversion to binary takes 50 microseconds per number. This overhead processing can normally be absorbed within the card read time. Each read station can be set to interrupt the main processing whenever it is ready, when an abnormal end-of-operation is sensed, or when an end-of-file signal is received. The end-of-file interrupt does © 1963 Error checking consists of programmed comparison in the actual computer store. No other checking is available. However, as the size of the input area is defined in the original card read instruction, input area overflow cannot occur. As the operating systems require a card reader to be on-line, either this unit or some other card reader must be included in a system. • 13 Availability: •. 10 months. . 14 First Delivery: 1963 • by Auerbach Corporation and BNA Incorporated 4/63 247:075.100 CDC 3600 CDC 3691 Paper Tape Reader/Punch INPUT-OUTPUT: CDC 3691 PAPER TAPE READER/PUNCH § .11 075. •1 Identity: . • • . . • • . CDC 3691 Paper Tape Reader /PUnch . GENERAL No details have been released for this unit. © 1963 by Auerbach Corporation and BNA In corpora led 4/63 247:081. 100 CDC 3600 CDC 3655 Printer INPUT-OUTPUT: CDC 3655 PRINTER § 081. .12 Description (Contd. ) under the 1604 systems (Section 241:081). No details except its operating speed have been released . .1 GENERAL • 11 Identity:........ CDC 3655 Printer. .12 Description The 3655 Printer is an adaptation of the Analexmanufactured CDC 1612 Line Printer, described © 1963 The general method of handling input-output shows that the printer wilt most probably operate with eight alphameric characters packed into a word. Storage loading is thus minimized during printing to a load of approximately O. 04 per cent of the capacity of a single bank. by Auerbach Corporation and BNA Incorporated 4/63 • 247:091.100 STANDARD EDP • REPORTS CDC 3600 Input-Output CDC 606 Magnetic Tape INPUT-OUTPUT: CDC 606 MAGNETIC TAPE UNIT § 091. .1 '.11 .12 .12 GENERAL in either direction. The maximum rewind time of a 2,400 foot tape is 80 seconds. Identity: • • • . • . . • Magnetic Tape Unit. CDC 606. Data is stored in the computer in multiples of eight characters; i. e., sets of full words. If a block being .read from tape does not fill an exact number of words, the least significant end of the last word is filled with zeros before being put into the core storage. If this occurs, a length error is recorded and program examination of the Buffer Control Word can determine the cause. However, it is not possible to determine how many zeros have been incorporated in the record. The adding of zeros can never occur when tapes written by CDC 3600 are being used, but can occur when tapes written by other machines (including the CDC 160 and I60-A) are used. Description The CDC 606 Magnetic Tape Unit provides the following facUities under program control. While Writing: (1) Packing density either 200 or 556 rows per inch. (2) Binary or BCD coding. (3) lnterrupt on: next error, when ready, end of file, or any combination. (4) Skip bad spot. (5) Write end-of-file mark. (6) Rewind with or without interlock. (7) Automatic conversion between Jnternal and External BCD. While reading: (1) Binary or BCD coding. (2) Read one fUe, or one record. (3) Skip one file or one record, forward or backward. (4) lnterrupt on either next error or when ready. (5) Rewind with or without interlock. (6) Automatic conversion between Internal and External BCD. At any time, individual sense instructions can be used to test for the following conditions : (1) (2) (3) (4) (5) (6) (7) Description (Contd.) Parity Error. Length Error. End-of-tape mark sensed. Tape positioned at Load Point. Interrupt requested on unit. Unit available. Certain types of program error have occurred and have been suppressed (e. g., read selection while writing is in progress). The CDC 606 Magnetic Tape Unit, controlled by the CDC 1615 Control Unit, forms amagnetic tape sys~. ' The 606 has a peak data rate of 83,400 characters per second. At this peak speed, one 606 requires 0.5 per cent of the store module running time. The tapes are completely compatible with tapes written by IDM 729 units having densities of either 200 or 556 characters per inch. Both CDC and mM tape units are similar except that the CDC uses pneumatic capstans instead of pinch rollers. Reading and writing can occur only in a forward direction; searching for end of tape, and rewinding can be done © 1963 .13 Availability: •• .14 First .2 PHYSIC.KL FORM .21 Drive Mechanism Deliv~ry: 7 1962 .211 Drive past the head:.. • pneumatic capstan. .212 Reservoirs Number: 2. Form: vacuum. Capacity: • each about 7 feet . . 213 Feed drive: motor. .214 Take-up drive: • motor. .. .22 Sensing and Recording: Sl':stems . 221 Recording system:. • 222 Sensing system: . • 223 Common system: magnetic head . magnetic head • 2 heads. · 23 Multiple Copies: • none. · 24 Arrangement of Heads Use of station: • Stacks: • • • . . erase. 1. Use of station: • Distance: •.• Stacks: • . . • • Heads/stack: .• Method of use: . recording. 0.4375 inch. 1. 7. 1 row at a time. Use of station: • Distance: ••• Stacks: • . • • . Heads / stack: Method of use: • sensing. 0.3 inch. 1. 7. 1 row at a time. by Auerbach Carporalion and BNA Incorporaled 4/63 CDC 3600 247:091 . 300 § 091. .5 PROGRAM FACILITIES AVAILABLE Blocks .3 EXTERNAL STORAGE .51 · 31 Form of Storage .511 Size of block: .311 Medium: .•• • 312 Phenomenon: . .32 • 322 Parallel by: .324 Track use Data: ••• Redundancy check: . Timing: • . • . . Control signals: Unused: • Total: . • 325 Row use Data: • Redundancy check: • Timing: Control signals: Unused: . Cap: • 34 .35 Coding: . ........ 1 to N rows at 200 or 556 rows/inch • 7 tracks. .52 6. 1. o (self clocking). O. O. 7. 1 to N. 1. O. o (record and segment marks are optional). O. O. 75-inch interblock gap. 6. O-inch end-of-file mark. BCD mode; I tape row per character as in Data Code Table No.3, even parity. Format Compatibility: • IBM BCD and binary codes at 200 and 556 rows per inch. gap on tape or cut-off specified in buffer control word. Output: • . • . • • • • cut-off specified in buffer control word. .53 Code Translation: matched codes. . 54 Format Control: . none. .55 Control Operations ...... Disable: Request interrupt: • 0.50 inch. 2,400 feet per reel. Select format: Select code: CONTROLLER A variety of controllers can be used, depending on whether 2, 3, or 4 simultaneous data transmissions are required and whether 8 or 16 tape units are to be connected to 1 controller. The maximum practical number of controllers is 32. . 43 Connection to Device: . up to 8 per 1615. · 44 Data Transfer Control • 441 Size of load: •• .. .442 Input-output areas: . 443 Input-output area access: • . . . . . 444 Input-output area lockout: . • . . • . 445 Table control: . . . 446 Synchronization: • 4/63 Input-Output Operations .521 Input: . • • • • . • • . • 1 block or file forward, with cut-off available at N words; zeros fill in the last word. . 522 Output: . . 1 block forward of N words . none • . 523 Stepping:. • 524 Skipping:. 1 block or file forward • 1 block or file backward. erase 3. 5 inches forward (to skip defective tape areas). .525 Marking: . . • . • . . . end-of-file mark, preceded by an automatic 6-inch gap, followed by a longitudinal parity character and the regular interblock gap. none . .526 Searching: • . . • Physical Dimensions .351 Overall width: . 352 Length: . • . . •4 .512 Block demarcation Input: ••••••• Positional Arrangement .321 Serial by: . 33 plastic tape with magnetizable surface. magnetization. 1 to N words, limited by available core storage. core storage . each word. none . none . automatic. 1 to N words, limited by available core storage; 8 rows per word. Rewind: Unload: • .56 Testable only by unload • yes, either for error or when free . no. yes, binary mode or BCD mode . yes. yes. Condi~ions Disabled: •. Busy device: Output lock: Nearly exhausted: no. yes. yes . yes, end-of-tape mark indicates a minimum of 8 feet remaining (approx. 20,000 char). Busy controller: . . • . no • End of medium marks: end-of-tape mark (reflective spot). load point. Ready to read: .• yes • Ready to write: • yes. Error condition: . parity or length error separately. Interrupt condition: whether selected to interrupt. 247:091.600 INPUT - OUTPUT: CDC 606 MAGNETIC TAPE UNIT § 091. .72 Other Controls .6 PERFORMANCE Function • 61 Conditions Unit Nmnber dial Selector: File protecplastic ring tion ring: affixed to tape reel Load Point: button high density (556 char/inch). low density (200 char/inch). I: . II: .62 Speeds I Condition Unload: II 30, 000 . . 621 Nominal or peak speeds: 83,400 • 622 Important parameters Name Density:. . . . . . 556 char/inch 200 char/inch. max 4 msec max 4 msec;. Start or stop time: 1. 3 min. Full rewind time:. 1. 3 min. 0.75 inch. 0.75 inch Interblock gap: max 8 msec/ max 8 • 623 Overhead: . . . . . • block msec/ block. • 624 Effective speed, 83,40ON/(N 30, OOON/ characters / sec: (N + 240). + 698) (See Graph) • 63 Comment Form .73 button • 732 Replenishment time: . .734 Optimmn reloading period: • . . . . . . msec per word or Percentage Error I II •7 EXTERNAL FACILITIES • 71 Adjustments Adjustment: Method: . Comment: . .0015 . 0015 recording density. switch. selects high or low density, but is overridden by program changes. 4 minutes. Check or Interlock Input area overflow: Output block size: Invalid code: Exhausted medium: Imperfect medium: Timing conflicts: Parity error: present. check reflective spot on ta pe none. none. check 1. 5. 0.6. reel. 2,400 feet; for I, 000 char blocks,S, 000, 000 at 200 char/inch; 11,300, 000 chars at 556 char/inch. 1. a minute . read after write with lateral parity check lateral and longitudinal parity checks check Recording: Core Store: Core Store: lowers tape into reservoirs and winds tape forward to load point. removes tape from reservoirs and raises upper portion of head assembly . ERRORS, CHECKS AND ACTION Demands on System Component Condition absence of ring inhibits tape writing. Loading and Unloading .731 Volmnes handled Storage: . Capacity: • . . . .8 select 1 of 8 addresses. Reading: Action interru~t. Interrupt. stop transfer. interrupt. interrupt. interrupt. interrupt. \ ''-.. .. © 1963 by Averbach Corporation and BNA Incorporated 4/63 247: 101.100 CDC 3600 Data Channel Converters CDC 3681,3682 DATA CHANNEL CONVERTERS § 101. .1 IDENTITY: • .11 General CDC 3681, 3682 Data Channel Converters. 3600-TVPE EXTERNAL EQUIPMENTS 3600-TYPE EXTERNAL These Data Channel Converters can have the following functions: EQUIPMENT (1) To permit a CDC 160 Or 160-A to use 3600-type peripherals. One or two 3681 converters are connected to a 160 or 160- A computer and then operate as 3600 data channels. (See Figure 1). Figure'!' Non-Satellite (2) To permit a CDC 160 or 160-A to be connected as a satellite computer which is able to receive or transmit data from the storage of a 3600 system. This arrangement requires a 3681 data channel converter and an additional 3682 converter .. The 3681 simulates a 3601 data channel, and the 3682 interconnects two 3606 data channels; the 3681 handles the necessary control and checking information. (See Figure 2). Syst~m 3600-TYPE EXTERNAL EQUIPMENT DATA 3603 3602 3606 COMMUNI- STORAGE CATIONS MODULE MODULE -' 0 ;! IE: I- ct 0 Z 0 I< 20 - Interrupt Register 21 - All "O's" { 22 - ;-1 23 - All "l's" 24 - Instruction Bank Register 25 - Operand~Bank 26 27 30 31 Shift Count Register Miscellaneous Mode Selections P Register Time Register - Register The operations which may be performed are listed below according to their octal values of's'. s =0 Register Or p v q- r Forms the logical OR of operands 'pI and 'q' and places the result in 'rIo s =1 Register Exclusive Or p¥ q- r Forms the logical exclusive OR of operands 'pI and 'q' and places the result in 'rIo >I< All "O's". +1. and all "l's" are not registers. but are forced operands which may be referenced in an operation. © 1963 by Auerbach Corporation and BNA Incorporated 5/63 CDC 3600 247: 121.110 § 121. s =2 Register And Forms the logical AND of operands 'p' and 'q' and places the result in 'r'. s =3 Register Implication p ::I q - r Forms the logical implication of operands 'p' and 'q' and places the result in 'r'. s =4 Register Equivalence p' E q - r Forms the logical equivalence of operands 'p' and 'q' and places the result in 'r'. s =5 Register Sum p+ q- r Adds the contents of 'p' to the contents of "q' and places the result in 'r'. s =6 .Register Difference p - q- r Subtracts the operand 'q' from 'p' and places the result in 'r'. s =7 Register Transmit/Swap (RXT /RSW) Uses register designators 'q' and 'r' only. The unused 'p' portion of the Inter-Register instruction format becomes a function modifier with the following designator: '4121110-BIT Values for the 0 1 2 3 4 5 6 7 't' designator are: Swap (q) and (r); do not clear q; do not clear r . Swap (q) and (r); do not clear q; clear r Swap (q) and (r); clear q; do not clear r Swap (q)and (r); clear q; clear r Transmit (q) to r; do not clear q; do not clear r Transmit (q) to r; do not clear q; clear r Transmit (q) to r; clear q; do not clear r Transmit (q) to rj clear q; clear r TRANSMIT COMMANDS AND TRANSMIT AUGMENT (XMIT) 47 42," 39 38 2423 2120 18 17 I~ 14 0 -BIT ~-----r--'-----------------.--.'--.---.--------------~ ORIGIN ADDRESS DESTINATION ADDRESS ~~\~----~vr----~I~~~\~----~vr----~ f=63 1st BANK ADDRESS m f=.2 2 nd BANK ADDRESS n The Transmit commands read an operand from the storage location designated by the first storage address 'a m', perform the specified operations, and place the results in storage address Ii n'. At the end of the operation, the Operand Bank register is set to 'i'. I~terpretations of the 3-bit suboperation designator 'Sl are given below (the lower .. order two bits of's' specify the operation): 5/63 247: 121.111 INSTRUCTION LIST § 121. s = XOO Transmit The contents of storage location la m l are transmitted to storage location Ii nl. contents of la m l remain unchanged. The s = X01 Transmit Complement The complement of the contents of storage location la ml are placed in storage location Ii nl. The contents of la m l remain unchanged. s = X10 Transmit Masked The logical product of the contents of storage location'a ml and Q is placed in storage location Ii nl. The contents of la m l remain unchanged. s = X11 Transmit + Constant The contents of storage location la mi. are added to a constant (constant is in A) and transmitted to storage location Ii nl. The contents of la ml remain unchanged. Values for the upper order. bit of lSi are: s = OXX Execute the specified Transmit command without augmentation. s = 1XX Augment the specified Transmit command. The augment portion of this instruction may be used to increase the capability of the designated command. Commands may be executed without using the augment capability; in this case, just one word is transmitted. With augmentation selected, the specified Transmit operation may be repeated a given number of times. Storage addresses may be increased by an increment quantity for each repetition of the operation. Five index registers are assigned to hold the necessary control quantities for an augmented Transmit operation. These registers must be loaded with the appropriate control quantities prior to executing this instruction. Index register assignment is as follows: B 1 - Holds word count; i. e., the number of words to be transmitted. Its contents are reduced by one after each operation. When (B 1) = 0, the operation is. complete. B2 - Holds new origin address modifier (increment in B3 has been added to old origin address). Normally, this index register is clear at start. © 1963 by Auerbach Co,rporation and BNA Incorporated 5/63 CDC 3600 247:121.112 § 121. SINGLE PRECISION AUGMENT 15 14 12.. 10 8 7 6 5 4 3 2 I 0 - BIT The 24- bit Single Precision Augment command may be used to perform one or more of the following operations: 1) Increase the capabilities of certain instructions by specifying additional operations to be performed. 2) 3) Change the vafue of the Operand Bank register. Provide additional modification of the address portion of the lower instruction. When t.his command is used in the lower instruction position of a program step (case 2 above), the following operations occur: 1) 2) The value of the Operand Bank register is set to 'a' (if 'd' is a "1"). All other designators perform no meaningful operations and have no effect on subsequent instructions. When this command is used in the upper instruction position of a program step (case 1 above), the following operations occur: 1) The value of the Operand Bank register is set to 'a' (if 'd' is a "1"). 2) Operations using the index designator'lvl are performed (refer to table 3-3),' 3) The augment operation designators It' are stored to condition the operation of the lower instruction being augmented. Instructions which may be augmented using 'v' and the augment designators rtf are listed in tables 3-4 and 3-5. Designators which may be used when augmenting a given instruction are checked opposite that instruction. Augment operation designators are tabulated below. 5/63 247: 121.113 INSTRUCTION LIST § 121. TABLE 3-2. Designator If a "0" d Bank address not used Bank address is used; the vatue of the bank address designator 'a' is always plaCed in the Operand Bank register. to Rounded arithmetic Normalized arithmetic Un- rounded arithmetic':' Un-normalized arithmetic t1 t2 Use signed operand Use magnitude of operand (positive value) t3 t4 Leave source alone Clea'" source (source is always a register) Do not complement operand Complement operand t5 t6 Do normal operation Do replace operation t7 * AUGMENT OPERATION DESIGNATORS Value If a "1" Direction of shift determined Direction of shift determined by lower instruction operation code as modified by by lower instruction operoperand sign value (i. e., if k + (Bb) + (VV) ation code (normal). is a negative value, reverse the direction of the shift being augmented). Shift being augmented is end Sliift being augment~d is end-off (left or around (left shift) or end-off right) or sign not extended (right shift). and sign extended (right shift). If augmenting Divide Fractional instruCtion, execute Truncated Divide. When the Augment command is in the upper instruction position of a program step, the index designator 'v' may be used in the following manner to augment the lower instruction. TABLE 3-3. AUGMENT OPERATION WITH 'v' Value Operation v =0 If v = 0, this designator has no significance in the operation. v =1-6 If v = 1-6, address modification rules apply. v =7 If v = 7, indirect addressing rules apply. The quantity held in the address portion (bits 00-14) of the lower instruction is treated as a storage address (whether· 'm', 'y', or 'k'). The lower 18 bits at this storage address are read from storage and: a) The upper 3 bits (new 'v') are placed in the 'v' designator position of the augment instruction,. b) The lower 15 bits are placed in the address portion of the lower instruction. If new v = 7, indirect addressing continues until completed; if new v = 1-6, address modification is performed. The contents of the index register specified by 'v' are added to the address portion (bits 00-14) of the lower instruction to form M, Y, or K, whichever the case. • Upon completing the operations specified by the upper (Augment) instruction, the address portion of the lower instruction now contains a modified value (if 'v' specified indirect addressing or address modification). When the instruction being augmented (the lower instruction) is executed, its index designator is interpreted in the normal manner. Indirect addressing or address modification is performed on the address modified by the Augment operation. © 1963 by Auerbach Corporation and BNA Incorporated 5/63 CDC 3600 247:121.114 § 121. DOUBLE PRECISION AUGMENT 23 15 14 12 II 10 a1 6 5 4 3 2 1 0 - BIT OPERATION CODE ~ BANK ~ ADDRESS AUGMENT OPERATION , UNUSED DESIGNATORS f=77.2 The 24-bit Double Precision Augment command is used in the same manner as the Single Precision Augment command. command are listed in table 3-6. on 96-bit operands. Instructions which may be augmented by this Operations in this instruction category are performed Designators which may be used when augmenting a given instruc- tion are checked opposite that instruction. table 3-7. TABLE '3-6.. Instruction to be Augmented Augment operation designators are listed in AUGMENTABLE INSTRUCTIONS t5 t4 LDA t3 X t2 t1 to I ! X ? STA FAD X FSB FMU X X X X X X X X X X X X X X X X AUGMENT OPERATION DESIGNATORS Designator Value If a "0" 5/63 X X FDV TABLE 3-7. X If a "I" to Rounded ,arithmetic Un- rounded arithmetic t1 t2 Normalized arithmetic Un- normalized arithmetic Use silmed operand Use mae:nitude of operand t3 t4 Leave source alone Clear source Do not complement operand Complement operand t5 Do nor~al operation Do replace operation d Bank address not used Bank address is used; the value of the bank address designator la l is always placed in the Ope'rand Bank register. 247:121.115 INSTRUCTION LIST § 121. SEARCH ORDER JUMP ADDRESS ADDRESS n m BANK USAGE Four search operations are conditioned by the designator's I. S ,= 0 Equality Search (SEQU) s = 2 Search Within Limits (SEWL) s =1 s = 3 Search Magnitude Within Limits (SMWL) Masked Equality Search (SMEQ) Each of these operations searches a list of operands to find one that satisfies the specific criterion. These items may be in sequential or incremented (other than 1) addresses. The first item is in the location specified by starting address 'a m' + B2. If bit 39 is a "1", indirect addressing is used to determine the starting address. contents of index register B2 are added to 'm' to form 'a M'. The The storage word at address 'a M' is the address of the storage word to be searched. If bit 39 isa "0", operation proceeds without indirect addressing. (B1) is reduced one count for each word that is searched until an operand is found that satisfies the criterion or until B 1 equals zero. If the search is terminated by finding an operand which meets the crite- rion, an exit is performed to the next instruction. The address of the operand that meets the criterion is m + (B2) - (B 3 ). If no operand in the list is found that meets the criterion, a jump is executed to the location specified by the jump address 'n' (jump is effected within the same storage bank). Three index registers used in the search operations are assigned as follows: B1 - Holds the word count; i. e., the number of words to be searched. B2 - Holds the new operand address modifier (the increment has been added to the old address modifier). B3 - Holds the increment quantity; i. e., the quantity which will be added to the operand address modifier to specify a new operand address. Index register values are set by program, prior to executing the Search instruction. © 1963 by Auerbach Corporation and BNA Incorporated 5/63 247:121.116 CDC 3600 § 121. The search operations are: s = 0 Equality Search (M) = (A) Searches a list of operands to find one such that (M) is equal to (A). L(Q)(M) s = 1 Masked Equality Search = (A) Searches a list of operands to find one such that the logical product of (M) and (Q) is equal to (A). s = 2 Search Within Limits (A) 2: (M) > (Q) Searches a list of operands to find one whose value lies between (A) and (Q). s = 3 Search Magnitude Within Limits (A) 2: I (M)I > (Q) Searches a list of operands to find one whose absolute magnitude lies between (A) and (Q). (Magnitude refers to the magnitu~e of signed operands. ) The flow diagram below outlines the sequence of events during a typical search operation. Figure 3-4. 5/63 Sequencing for 63.4 Search Operations 247:121.117 INSTRUCTION LIST § 121. LOCATE TEST ELEMENT CLSTU, LSTL) a-BIT ~----~--~~~~nr-~nT.~~r--'~~~nT.~~~~~M7~~ This instruction may be used to locate elements of a list when the elements are scat-. tered throughout a storage bank or throughout several storage banks. An element of the list contains two parts: (1) data, and (2) the location (storage address) of the next element of the list. An element may occupy one storage word or several. If the element occupies several storage words, the words are usually in consecutive storage locations. The format of the word holding an element (or the format of the first word if the element occupies several words) is as follows: (USED IF 5=1) (USED IF 5=0) OPERAND BANK OPERAND BANK ADDRESS OF NEXT ELEMENT TAKEN FROM UPPER OR LOWER DEPENDING ON VALUE OF "5'.' Note that the format permits several options for positioning data within the word: 1) If the lower 18 bits are used to specify the address of the next element (s = 1 in the instruction word), the entire upper 30 bits may be used to hold data. 2) If the upper address portion is used to specify the address of the next eleme:nt (s =0 in the instruction word), the lower 24 bits and the uppermost 6-bit portion may be used to hold data. Interpreting data is determined by the list containing it, its location in a particular list, or by an identifying tag in the data portion of the element. © 1963 by Auerbach Corporation and BNA Incorporated 5/63 CDC 3600 247:121.118 § 121. Executing the Locate List Element instruction locates the 'nth' element of the list. Before executing the Locate List Element instruction, two operations must have been accomplished. These are: 1) The first element of the list is located at the storage address designated by the contents of VV. (The first element must be in the storage bank currently in use as the operand bank.) Therefore, this index register must be loaded with the appropriate address before executing this instruction. 2) A second index register (designated by B b ) holds the count field; i. e., a count b 'n' to enable locating the 'nth' element. Thus, the programmer must load B with 'n' before the operation. Operation then proceeds as follows: 1) Read element from storage at address specified by (VV). 2) Examine (B b ). is complete. 3) If s =0 If (Bb) If (B b ) = 0, the 'nth' element has been located and the operation ~ 0, reduce (Bb) by one. (refer to instruction format), replace the old (VV) with the upper ad- dress portion of the new storage word (refer to the format of the word holding an element). If s = 1, replace the old (VV) with the lower address portion of the new storage word. NOTE Once the value of's' is set in the instruction word, it cannot be changed during the course of the instruction. For example, if's' is set to "1 ", the lower address portion of the storage word will be used to locate the next element each time until the 'nth' element is located. 4) Examine (V V). If the new (VV) = 0, the operation is complete. (The pro- grammer must previously have loaded all zeros in the designated address portion of the last storage word of the list.) Address 00000 may be used as the first list element location, but operation will halt (since the check on VV occurs after the first storage reference) if address 00000 is used to locate a subsequent list element. 5/63 247:121.119 INSTRUCTION LIST § 121. I 0, (VV) now designates the address of the next element. Also, if the new I 0, the Operand Bank register is switched to 'a' (where 'a' is the bank designator If (VV) (VV) adjacent to the designated address portion of the storage word). 5) Return to step 1. At the end of operations: 1) If the 'nth' element has been located, B b holds a count of zero, V v holds the address of the 'nth' element, and the dperand Bank register is set to the bank containing that element. 2) If the 'nth' element has not been located and the last element has been reached, Bb holds a non- zero count (indicating an erroneous count was initially placed in B b ), VV holds 00000, and the Operand Bank register holds the bank address of the last element. D Register Jump (DRJ)# f=77.6 This instruction scans the D (Flag) register from left to right. detected, a jump is executed to address P + i + 1 (where P is the current address and Ii' is the location of the first non-zero bit in the D register). the next instruction is executed. struction. * If a non-zero bit is * If the D register is zero, This instruction is restricted to use as an upper in- Ii' = the location of the particular bit within the register. Though the register is numbered from right to lE"ft, scanning is from left to right. The first bit scanned is bit '47. If a "1" exists in bit 47, i = 47, and a jump is effected to [p + 47 + 1J (decimal notation). © 1963 by Auerbach Corporation and BNA Incorporated 5/63 247: 121.120 § CDC 3600 121. NBJP, ZBJP bm Bit Sensing O-BIT ~~--~~~~~~~----------------~ JUMP ADDRESS f=63 UNUSED f=.6 s UNUSED m This instruction examines a single bit of 48 (specified by 'g') in a designated register ('p' specifies the register - see Inter-Register instruction). A 3-bit sub-operation designator's' specifies the operation to be performed on this bit. The lower order two bits of's' specify the operation to be performed after the sense operation: s = 0 Leave bit alone s = 1 Set bit to "1" s = 2 Clear bit s = 3 Complement (toggle) the bit If, in the execution of this instruction, an attempt is made to alter the contents of registers designated by codes 20-31, the following occurs: 1) That operation which would alter the contents of registers 20-31 is not performed, and 2) The instruction continues to. completion. This operation does not constitute a fault or interruptible condition. The upper order bit of's' conditions a jump operation. If upper order bit of s = 1 Jump if bit being examined in the specified register If upper order bit of s =0 is a "0". Jump if bit being examined in the specified register is a "1". If the condition is met, the jump is to the address specified by M. is not met, the next instruction is executed. 5/63 If the jump condition 247: 121.121 INSTRUCTION LIST § 121. EXEC Execute b v m 47 4241 3938 3635 2423 2120191817 1514 0 -BIT .-----_.--.---v.n~~~~7.nn7.r__.~rT--._--------------__, ADDRESS m '=63 Jumps to M [M = m + (Bb) + (vv) ] and executes both instructions at M. The Operand Bank switch is set to "a' if ~-ci I is a "1". After executing M, the main sequence continues unless the instruction executed was a jump. In this case, a new sequence is initiated at the jump address in the same program bank as EXEC. This instruction is effectiv~ly an indirect instruction, or a subroutine of a single instruction. Note that the instruction bank address is not changed by the execute instruc- tion. Note also that the contents of P remain at the address /Df the EXEC instruction. RGJB b m Register Jump O-BIT .1514 47 2423 212019 r------r--,-----------------.-~~----_.----------------, OPERAND JUMP ADDRESS y m f=62 M [M Jumps to = m + (B b )] if, in the operation specified by's', the condition is met. If the condition is not met, it executes the next instruction. If, in the execution of this instruction, an operation would attempt to alter the con- tents of registers designated by codes 20-31, the following occurs: 1) That operation (s = 6 or 7) which could alter registers 20-31 is not performed, and 2) The instruction continues to completion. This operation does not constitute a fault or interruptible condition. © 1963 by Auerbach Corporation and BNA Incorporated 5/63 247:121.122 CDC 3600 ----------------------------------------------------------------------~------- § 121. Octal values for's' and the specific operations.are: Operation -s = y? 0 (p) 1 2 (p) > y? 3 4 (p) f. y? (p) ~ 5 (p) 2. y? 6 7 (p) < y?} if (p) < y, then (p) - y - (p) (p) ~ y? (p) < y? y? In executing the above operations, the following arithmetic properties hold: a) If 'pI designates a 48-bit register, the sign bit of 'y' is extended, and b) If 'pI designates a 15-bit register, the operands are compared as 48-bit signed quantities are compared in the operation. quantities (15-bit quantities with "O's" extended in tQe upper bit positions). Operand registers are indicated below according to their octal values of 'pl. 00 - Time Limit Register 01 - B1 15 - D Full 02 - B2 17 - Interrupt Mask Register 03 - B3 20 - Interrupt Register 04 - B4 05 - B 5 06 - B6 24 - Instruction Bank Register 10 - A Upper Address 25 - Operand Bank Register 26 - Shift Count Register 12 - Q Upper Address 13 - A Full 14 - Q Full 5/63 * 21 - All "O's" { 22 - +1 23 - All "l's" 07 - A Lower Address 11 - Q Lower Address * 16 - Bounds Register 27 - Miscellaneous Mode Selections 30 - P Register ::, . - Time Register These are not registers, but forced operands which may be referenced in the operation. 247:121.123 INSTRUCTION LIST § 121. VARIABLEDAT A FrELD Byte (LBYT, SBYT, SCAN) ADDRESS '-------v------ '-------v------'----y--I"-.r--l '----y--I'\--.---"""'\y,----....I f=63 o e f=.5 m SUB-OP The byte instruction performs two general operations on specified portions (bytes) of A, Q, or a designated storage operand. These operations are: Transmit 1) Load - Loads a byte of the specified register (A or Q) with the designated byte of M. 2) Store - Stores a byte of A or Q in the selected byte of M. Scan Searches storage operands in byte-size increments until the specified condition is met or until (A) =0 (the A register holds the byte count). Operation designators are tabu- lated below. © 1963 by Auerbach Corporation and BNA Incorporated 5/63 247:132.100 CDC 3600 Coding Specimen COMPASS CODING SPECIMEN: COMPASS § 132 • •1 COnING SPECIMEN The following is an example of the COMPASS output listing. ORIGINAL SOURCE DECK LISTING A PROGRAMA + B EXCH !DENT SENSLESS BLOCK 0 COMMON ARRAYl(lOOB), ARRAYIA(20B) SLJ ** STA TEMP,l STQ TEMP,2 LDA,MG TEMP,l RTJ PROGRAMB EXT PROGRAMB LDQ =07700000 STL TEMP ENTRY PROGRAM A LIU PROGRAMB,3 SIL ARRAYl+20B,3 SLJ PROGRAMA BLOCK 0 COMMON ARRAY2(100) ORGR ARRAY2 OCT 0,1,2,3 ORGR * ** SLJ LBYT ,AO,E6,RI,CL INI 1,3 ENI 42,4 SLJ EXCH 0,3,4 END © 1963 by Auerbach Corporation and BNA Incorporated 5/63 247: 132.101 § CDC 3600 132 • •1 CODING SPECIMEN (Contd.) OUTPUT LISTING FROM ABOVE SOURCE DECK PROGRAM LENGTH BLOCK NAMES IDENT SENSLESS BLOCK COMMON 0 00002 ARRAY1(lOOBI,ARRAY1AC20BI 00003 ARRAY1AC20Bl 00004 ** TEMP,l 00005 TEMP,2 00006 00001 00307 00120 00144 A B ENTRY POINTS PROGRAMA 00000 EXTERNAL SYMBOLS PROGRAMB 00000 00100 00000 A 0 1 2 0 1'7 1 12 1 75 4 77777 P00221 P00221 00000 00004 P00221 X77777 00004 50 0 16 a 47 0 00000 P00306 P00221 00207 52 3 57 3 00301 75 0 50 0 00001 00002 00003 75 20 21 50 LDA,MG TEMP, 1 00007 RTJ EXT PROGRAMB PROGRAMB 00008 00009 LDQ STL ENTRY =07700000 TEMP PROGRAMA 00010 00011 00012 XOOO03 COO020 LlU SIL PROGRAMB,3 ARRAY1+20B,3 00131 00132 POOOOO 00000 SU PROGRAMA 00178 BLOCK COMMON ORGR OCT 0 ARRAY2CI001 ARRAY2 0,1,2,3 00179 00180 00181 00182 00001 00002 00003 00302 00303 00304 00305 00306 +. B 00000 00000 PROGRAMA SLJ STA STQ 00 0 00 a 00 a 00 0 00 a 00 a 00 a 00 a 75 50 63 52 51 50 75 SO 00 07 a a 3 a 3 4 0 a 0 7 COOOOO 00000 00000 00000 00001 00000 00002 00000 00003 P00302 77777 00000 40006 00000 00001 00052 P00302 00000 00000 00000 1 2 • 3 EXCH ORGR SLJ LBYT,AO,E6,RI, CL INI ENI SU END 5/63 00183 00184 * ** 1,3 42,4 EXCH 0,3,4 00185 00186 00187 00188 00189 CODING SPECIMEN: COMPASS § .1 247: 132.102 132. CODING SPECIMEN (Contd.) CORRECTION OECK TO BE ASSEMBLED WITH COSY DECK ASSOCIATED WITH ABOVE LISTING REPLACE COMMON COMMON REPLACE DSTA INSERT ADD DELETE 3 ARRAYl!120B) ARRAYIA 5,6 TEMP+2 10 =0400000 131 OUTPUT LISTING FROM ASSEMBLY OF ABOVE CORRECTION DECK AND COSY DECK IDENT PROGRAM LENGTH BLOCK NAMES SENSLESS 00001 0 ARRAYH120B) ARRAYIA 00002 00003 00004 00005 00310 A B 00121 00143 ENTRY POINTS PROGRAMA 00000 EXTERNAL SyMBOLS PROGRAMB 00000 00120 00000 A 75 50 77 20 77 12 75 a a 2 0 1 1 4 77777 00000 00000 P00220 00004 P00216 X77777 00005 50 a 16 0 14 0 47 a 00000 P00306 P00307 P00216 00207 57 3 00301 75 0 50 0 00001 00002 00003 00004 00001 TEMP+2 00006 LDA,MG TEMP,l 00007 RTJ EXT PROGRAMB PROGRAMB OOOOB 00009 LDQ ADD STL ENTRY =07700000 =0400000 TEMP PROGRAMA 00010 00011 00012 00013 COO020 SIL ARRAYl+20B, 3 00131 POOOOO 00000 SLJ PROGRAMA 0017B BLOCK COMMON ORGR OCT 0 ARRAY2(l00) ARRAY2 0, 1, 2, 3 00179 00180 00181 00182 B 00002 00003 00302 00303 00304 00305 00306 00307 00 00 00 00 00 00 00 00 75 50 63 52 51 50 75 50 00 07 00 00 0 a 0 0 0 0 0 0 0 0 3 0 3 4 0 0 0 7 0 4 ** DSTA 00000 00000 BLOCK COMMON COMMON PROGRAMA SLJ COOOOO 00000 00000 00000 00001 00000 00002 00000 00003 P00302 77777 00000 40006 00000 00001 00052 P00302 00000 00000 00000 00000 00000 © 1963 1 2 3 EXCH ORGR SLJ * ** 00183 00184 LBYT,AO,E6,RI,CL 0,3,4 00185 INI ENI SLJ 00186 00187 00188 1,3 42,4 EXCH END by Auerbach Corporation and BNA Incorporated 00189 5/63 247: 141.100 _STANDARD EDP • REPORTS CDC 3600 Data Code Table No. 1 Collating Sequence (BCD) DATA CODE TABLE No.1 § 141. .1 USE OF CODE: .2 STRUCTURE OF CODE internal collating sequence . In ascending sequence 0 1 2 3 4 5 6 7 8 9 ? # @ undefined undefined undefined & 0 undefined undefined undefined J K L M Y Z 'f , % undefined undefined undefined N 0 P Q R 0 $ * A B C D E F G H I undefined undefined undefined blank + W / S T U V X © 1963 by Auerbach Corporation and BNA Incorporated 4/63 247:142.100 .STAHIlAAD II RIIORTS EDP CDC 3600 Data Code Table Internal DATA CODE TABLE NO.2 § 142. .1 USE OF CODE: binary 6- bit code. internal. .2 STRUCTURE OF CODE .21 Character Size: .22 Character Structure ... 6 bits. .221 More significant pattern: •••• 2 zone bits; B, A = 32, 16. .222 Less significant pattern: ••••• 4 numeric bits; 8, 4, 2, 1. .23 Character Codes LESS SIGNIFICANT PATTERN MORE SIGNIFICANT PATTERN 0 16 32 0 0 & - Blank 1 1 A J / 2 2 B K S 3 3 C L T 4 4 D M U 5 5 E N V 6 6 F 0 W 7 7 G P X 8 8 H Q y 9 9 I R Z 10 '1 + a - oj, U # $ , 12 @ • % a 0 48 13 14 15 © 1963 by Auerbach Carporation and BNA Incorparated 4/63 ·~ANIlWl II 247:143.100 RIroRTS EDP CDC 3600 Data Code Table Magnetic Tape DATA CODE TABLE NO.3 § 143. BCD 6-bit code • magnetic tape. •1 USE OF CODE: .2 STRUCTURE OF CODE .21 Character Size: .22 Character Structure .221 More significant pattern: •••• .222 Less significant pattern: •••• .23 ... LESS SIGNIFICANT PATTERN MORE SIGNIFICANT PATTERN 0 0 6 bits. 2 zone bits: B, A = 32, 16. 4 numeric bits, 8, 4, 2, 1. 16 Blank 32 48 - & 1 1 / J A 2 2 S K B 3 3 T L C 4 4 U M D 5 5 V N E 6 6 W 0 F 7 7 X P G 8 8 Y Q H 9 9 Z R I 10 0 .j. 0 - + 0 11 # , $ 12 @ % * Character Codes 0 13 14 15 TM !l. + I \ © 1963 by Auerbach Corporation and BNA Incorporated ,4/63 247: 144.100 CDC 3600 Data Code Table 1612 Printer DATA CODE TABLE NO.4 § • 22 144 • Character Structure •1 USE OF CODE: • • • • CDC 1612 Printer, internal. .2 STRUCTURE OF CODE • 222 Less significant pattern: • • • • • • • 3 bits: 4, 2 and 1. .21 Character Size: • • • • 6 bits. • 23 LESS SIGNIFICANT PATTERN .221 More significant pattern: • • • • • • • 3 bits: 4, 2 and 1. Character Codes MORE SIGNIFICANT PATTERN 0 1 2 3 4 5 6 7 0 : 8 Blank Y - Q + H 1 1 9 / z J R A I 2 2 1> S ] K % B < 3 3 = T· , L $ C 4 4 'I U ( M * D ) 5 5 .::: ~ N l' E ? 6 6 . V W - 0 t F ·1 7 7 [ ~ P > G ; NaTE: Characters~. %. respectively by 1\ • © 1963 X and $ appear for business application and are replaced v. and""] for scientific application. by Auerbach Corporation and BNA Incorporated 4/63 247:151.100 • STANDARD _EDP ." CDC 3600 P. O. Facilities REPORTS PROBLEM ORIENTED FACILITIES The following routines were develaped for the CDC 1604 and are available for the CDC 3600. § 151. •1 UTILITY ROUTINES .11 Simulators of Other Computers .16 File Maintenance: • • • only routines for specific installations are available .17 Other Arithmetic Functions IBM 650 Reference: • • . • . . 02 NBSB. Data available: . • •• 1961. Description The routine simulates an mM 650 computer containing a 2,000 word drum, index registers and floating point. The simulator operates on a CDC 1604 with an IBM 407, 088 and 523 unit. TIME (JLsec) - x + Complex Numbers, Floating Point Simulation by Other Computers Sine Cos Tan Arc Sine Arc Cos Arc Tan Exponential Natural log CDC 160-A: . . • • . . INTERFOR system simulates 20 of the 62 operations, and includes other facilities. .13 Data Sorting and Merging Reference: • • Record size: . j310ck size: • Key size:. • . M 4 CODA KSM. 80 or 120 characters. 1 record per block. any number of keys of any length. File size: • • any number of tape reels. Number of tapes: 4 upwards. Date available:. . 1961. Description • The routine provides data editing facilities and operates only on BCD data. • 14 Report Writing: • • • • none. • 15 Data Transcription © 1963 100 TIME SPACE ERROR (Max) (JLsec) 2.1 x 10- 11 275 68 2.1 x 10- 11 68 275 2.4 x 10- 11 53 320 8.7 x 10- 11 460 115 8.7 x 10- 11 310 8.7 x 10- 11 71 280 8.7 x 10- 11 32 156 8.7 x 10- 11 45 190 Polynomial Evaluation SPACE 24 24 25 Hermite Laguerre Legendre Other Hypergeometric Functions ,.2 Convert Symbolic Magnetic-Tape-to-Paper-Tape Reference: . . . M 2 CODA MAGPT. Data available: • • .• 1961. Description Converts 80 or 120 character BCD magnetic tape to Flexowriter tape. Performance limited by Flexowriter output. 50 Mathematical Functions (Representative cases, all floating point) CDC 1604-A: . . • • • . by a switch on 1604-A console. · 12 50 Space: 2,491 locations, timing unknown • PROBLEM ORmNTED LANGUAGES PERT Linear Programming Package Civil Engineering Computation System by Auerbach Carparation and RNA Incorporated 4/63 .247: 171.100 _STANDARD EDP • REPORTS CDC 3600 M. O. Language COMPASS MACHINE ORIENTED LANGUAGE: COMPASS § 171. . 13 .1 GENERAL . 11 Identity:. COMPASS. . 12 Reference: . COMPASS Reference Manual. .13 Description Description (Contd. ) and constants in a convenient form; and second, it provides a systematic means of using any library, monitor, or subroutines as desired. Labeling is unusually free. Address symbols are normally one letter with an option of being followed by up to seven further alphameric characters for all labels. Three other types (+, -, and all numeric symbols) serve other functions. COMPASS is the basic assembly language of the CDC 3600 system and is used with the SCOPE operating system. This language includes all the machine code instructions. COMPASS allows for source language changes to already assembled programs, and for system, installation, or programmer-provided macro instructions. Programmer-provided macros may be included in the library. Communication between different subprograms and library subroutines is provided by use of COMMON blocks and the EXTernal pseudo-operation. Communication with the operating system is by way of the system macros. There are two types of data areas; both are called "COMMON" areas. These are differentiated in the language by having alphameric (called "Labeled COMMON") or numeric (called "Numbered COMMON") labels, and in usage by being able to preset the contents of the areas at load time only if "Labeled COMMON" is used. Communication with other independently written routines is arranged by the ENTRY points and the EXTernal Symbol linkage. These operations provide for a label to be common to more than one routine. The actual linkage is created at loading time. Use of COMPASS eliminates the need for the programmer to take care of complex format requirements of many of the CDC 3600 instructions. In particular, the many modifications which are available in the use of the single and double precision AUGMENT instructions can now be contained within the augmented instruction instead of being written separately. The assembly program for the 3600 is designed to accept as input, cards or card images containing symbolic 3600 programming instructions. It translates the symbolic instructions into 3600 machine language programs in relocatable binary, for loading into any portion of memory at run time. The assembler will produce as output any combination of: There are three types of macro codes. These are System macros (provided with the CDC 3600 system itself), Library macros (provided by the installation), and programmer-provided macros (provided within the program itself). These macros are normally written in COMPASS language and are inserted into the assembled coding each time they are called. However, some control is included by providing two pseudo-operations IFN, and IFZ. During assembly, these operations are used to test the value of some parameters or expression against zero to determine whether or not to insert the next "n" instructions of the macro coding. e Output listing of the assembled program. e Relocatable binary card output for subsequent loading and execution of the assembled program. e· Relocatable binary card images on an assemble and run tape for immediate loading and execution of the assembled program. e Compressed symbolic output deck to be used as input for subsequent modification and reassembly. Closed subroutines may be called into a program by the use of the EXTERNAL function. These are only incorporated into the program once. The assembly language performs two roles: first, it allows a programmer to write machine instructions LOCH , , ., , . , OPERA TlON, MODIFIERS .2 LANGUAGE FORMAT .21 Diagram ADDRESS FIELD 910 II 12 13 14 I::; 16 17 18 19 20 21 IOEHT COMMENTS I I 22 232425 26 21 28 29 30 31 32 33 '4 353637 38 3940 41 I 4243 44 45 46471 686970717273]74757&71787980 I I I I I I I I ....... I I I I , .. I 1,1. I I I I I I I \ © 1963 by Auerbach Corporation and BNA Incorporated 6/63 247: 171.220 § 171. .22 Legend LOCATION FIELD (LOCN): The location field, called an L-term, label, symbol, or identifier, may consist of one of the following types: CDC 3600 · 24 Special Conventions • 241 • 242 · 243 • 244 Compound addresses: Multi-addresses: Literals:. . . Special coded addresses: . TYPE 3: A minus (-) anywhere in the field and blanks in the remaining columns. TYPE 4: A label consisting of 8 characters all of which must be either numeric or blank. .3 LABELS • 31 General • 311 Maximum number of labels: . • . . . • 312 Common label formation rule: . OPERATION FIELD: The operation field may consist of: 1. One of the mnemonic operation codes listed in 247:171. 84 followed by a blank column or one or more modifiers. Commas are used to separate the operation code from the modifiers and the modifiers from each other. · 313 Reserved labels: . · 315 Designators:. • 316 Synonyms: • . . . • 33 Local Labels 4. One of the octal numbers 0-77. Expressions: The address field may contain the bank, (a), memory address or operand, m, and index registers, b and v, required to identify an operand or a storage location. Each of the terms in the address field may be defined by an arithmetic expression involving symbols and constants. The bank term, if present, must be enclosed in parentheses. Constants must be decimal or octal integers less than 215 • A constant will be interpreted as decimal. A symbol in an arithmetic expression must be a TYPE 1 symbol. The four operations permitted in the arithmetic expression are: addition (+), subtraction (-), multiplication (*), and division (/). * (this location). **(777778 ). Literals: restricted to single or double precision constants, in Decimal, Octal, Hollerith, or Typewriter code. Special Symbols: .23 Corrections: . • . . . . three pseudo instructions, DELETE, REPLACE, and INSERT, are available which operate on a condensed deck. 6/63 1 to 8 alphamerics including certain special characters. Blanks are not required. First character must be non-numeric. none. none. yes, via EQUivalence pseudo-op. Universal Labels: • . . none, but individual labels can be made universal to several independent subprograms, being called an External Table Entry to each subprogram. 3. The name of a macro-instruction. ADDRESS FIELD no practical limit. • 32 2. One of the pseudo operations listed in 247:171. 82. A blank in column 10 terminates the operation field and the operation code is given the value zero. * means this address. ** means 777778. + forces an instruction into - the upper or lower half of a word. TYPE 1: A symbol from 1 to 8 characters; the first is alphabetic, the rest are alphabetic or numeric. Leading, imbedded, and trailing blanks will be ignored and the symbol will be packed left justified by COMPASS. TYPE 2: A plus (+) anywhere in the field and blanks in the remaining columns. e.g., SYMBOL +5. none. up to 40 char, any code. • 331 Labels for procedures Existence: . . • . Formation rule First character: Others: . . . Number of characters: .332 Labels for library routines: . . . . . .333 Labels for constants: . 334 • 335 .336 .337 optional. non-numeric character. any non-blank character. 1 to 8. same as for procedures. same as for procedures, or as an element of an array within a numbered COMMON statement. none. none. same as for procedures. Labels for files: . . . Labels for records: . Labels for variables: Labels for other same as for procedures. subprograms: . . . .338 Others Labels for blocks containing preset data Existence: . . . . . optional. Formation rule: .. I to 8 alphabetics, "Labeled Common Blocks." Labels for reserved blocks for working storage Existence: .. , optional. Formation rule: . . 8 numeric or blank characters, an all blank label is acceptable, ''Numbered Common Blocks." Labels for arrays: . . same as for procedures. MACHINE ORIENTED LANGUAGE: COMPASS § 247:171.400 171. .542 Allocation counter Set to absolute:. . .4 DATA .41 Constants .. . .411 Maximum size constants Machine Form External Language Integer: . . . . . . 14 decimal digits plus sign. 16 octal digits plus sign. Fixed numeric: . . not allowed. Floating numeric: 28 digits with a decimal or binary exponent of up to 3 digits, plus sign. . 412 Maximum size literals Integer Decimal: 28 decimal. Octal: . . 16 octal digits plus sign. · Fixed numeric:. on~ integer. 10_ 308 Floating numeric: Alphameric: 16 characters. ·. . . 42 no. (ORGR relocatable pseudo-op entry in location). Set to label: yes . Set relative to label: • yes. Step forward: . . implied by set relative to label. Step backward: • implied. Reserve area: yes. .543 Label adjustment Set labels equal: Set label relative: Set absolute value: . Clear label table: .544 Annotation Comment phrase: Title phrase: . . .545 Other Allocation mode: • absolute or relocatable. .55 Facilities Omitted: none. .6 SPECIAL ROUTINES AVAILABLE .• 61 Special Arithmetic: .62 Special Functions . 422 Data type: • 423 Redefinition: . no. VFD (Variable Field Definition), BLOCK and COMMON statements • implied by use • use of BLOCK statements. • 43 Input-Output Areas: specified in program. .5 PROCEDURES .51 Direct Operation Codes . . · .. · .. .621 Facilities: . .. . 622 Method of call: . .511 Mnemonic Existen£e: Number: Example: . Comment: . 512 Absolute Existence: Number: Example: • "- yes. yes. Working Areas .421 Data layout Implied by use:. Specified in program: \ yes. yes. no . not within single subprogram; yes, by dividing into separate subprograms. optional with absolutes. 145. FDV; Floating Divide. where one op code has more than one type of operation, mnemonic modifiers are written after the operation code, thus FDV, CM, MG, UR would indicate that the magnitUde of the complement of the addressed operand be used, and that the operation should be unrounded • optional with mnemonic. 145. 45 for Add Logical. Overlay Control: . • . . handled by operating system. .64 Data Editing .641 Radix conversion: Code translation: • 642 Format control: • .65 Input-Output Control: .66 Sorting: .. Macro-Codes: yes, as provided by system installation in the library, or by programmer at head of the program. .67 Diagnostics: .53 Interludes: • . • . . none. .7 LIBRARY FACILITIES .54 Translator Control .71 Identity: .72 Kinds of Libraries various pseudo-ops. various pseudo-ops. Remarks. © 1963 none; any could be added in installation library . LIBM declares all used pseudo operations at the start of the program. The use of a declared macro name in the operation field of the coding sheet calls the actual macro. .63 . 52 • 541 Method of control Allocation counter: . Label adjustment: Annotation: • . . . • none. ..... .721 Fixed master: . . .722 Expandable master: by Auerbach Corporation and BNA Incorporated decimal-to-binary for initial constants. alphabetic-to- BCD, Flexowriter and Teletype. none. own program, with I/O pseudo-op check on I/O units involved. none • none can be specified by the programmer for use at running time in COMPASS system. installation library. no. yes. 6/63 CDC 3600 247:171.730 § 171. .82 . 73 Storage Fonn: • . 74 . 75 magnetic tape • Pseudos (Contd.) Code Description Varieties of Contents: . as detennined by installation. COMPASS DEC Mechanism DECD Change input to COMPASS format. Insert single precision decimal constants • Insert double precision decimal constants. Delete portions of a program. Replicate a sequence. Eject a page on the output listing. Specify the end of a subprogram. Terminate a macro-definition. Specify the end of a subprogram. Define entry points in a subprogram. Equate an undefined symbol to a defined symbol. Define external symbols. Identify the subprogram by name. Macro control pseudo instruction. Macro control pseudo instruction. Insert changes in a program. Declare library macros. Resume output listing. Define a macro . . 751 Insertion of new item: • via SCOPE Monitor. .752 Language of new item: . open. . 753 Method of call:. . . • . operation code identifies routine. ENTRY identifies entry point. Operating Manual lists special calls. .76 Insertion in Program • 761 . 762 .763 .764 Open routines exist: .• Closed routines exist: . Open-closed is optional: Closed routines appear once: . . . . . . . . EQU EXT IDENT IFN IFZ INSERT LIBM LIST MACRO MACROINSTRUCTION NO LIST OCT ORGR REM yes. yes. yes. yes. .8 INSTRUCTION CODE REPERTOIRE .81 Macros: -- .82 Pseudos ........ DELETE ECHO EJECT END ENDM ENDT ENTRY as provided by installation library. Code Description BCD BES BLOCK BSS CODAP COMMON Insert BCD characters. Reserve block of storage. Specify block of common. Reserve block of storage. Change input to CODAP-l fonnat. Declare array in common 0peration Field ROP,s RSW,CQ,CR RXT,CQ,CR LDA,CM,MG LAC,CM LDQ,CM,MG LQC,CM STA,CM,CL,MG STQ,CM,CL,MG LIU LIL SIU SIL ADD,CM,MG SUB,CM,MG MUI,CM,MG DVI,CM,MG MUF,CM,MG DVF,CM,MG,TR FAD,RP,CM,MG,UN, UR FSB,RP,CM,MG,UN, UR FMU,CM,MG,UN,UR Address Field p,q,r q,r q,r (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a)m, b, v (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a)m, b, v (a)m,b,v (a)m,b,v (a)m,b,v (a)m, b, v (a)m,b,v (a)m, b, v (a)m, b, v REPLACE SCOPE SPACE TYPE VFD .84 Calls a macro. Suppress output listing. Insert octal constants. Set location counter. Insert remarks on the output listing. Replace portions of a program. Terminates assembly process. Insert spaces in the output listing. Insert typewriter codes. Assign data in variable byte sizes. Direct Instruction Register OPeration (Inter Register Transmission).!! Register SWap.!! Register TRANSmiT!/ LoaD A. Load A Complement. LoaD Q. Load Q Complement. STore A. STore Q. Load Index Upper. Load Index Lower. Store Index Upper. Store Index Lower. ADD. SUBtract. MUltiply Integer. DiVide Integer. MUltiply Fractional. DiVide Fractional. Floating ADd. Floating SuBtract. Floating MUltiply. }j In ROP the modifier s is required. In ROP, RSW, and RXT a modifier does not cause insertion of the single precision augment. 6/63 247:171.840 MACHINE ORIENTED LANGUAGE: COMPASS § 171. .84 Direct (Contd. ) Operation Field FDV,CM,MG,UR ADX ENA,CM ENQ,CM ENI NOP INA,CM INI SAU SAL ISK SST SCM SCL SSU LDL ADL,RP,CM SBL,RP,CM STL ARS,EO,SS QRS,EO,SS LRS,EO,SS ALS,EO,SS QLS,EO,SS LLS,EO,SS SCA SCQ RAD RSB RAO RSO SSK SSH EQS THS MEQ MTH AjP,ZR ~/ NZ PL MI QjP,ZR~/ Address Field (a)m,b,v y (a)m,b,v (a}m,b,v, (a)m,b,v Instruction (a)m,b,v (a)m, b, v (a)m, b, v (a)m, b, v (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a}m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a}m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a}m,b, v (a)m,b, v (a)m,b, v (a}m,b,v (a)m,b, v (a}m,b, v (a)m, v Floating DiVide. ADd to eXponent. ENter A. ENter Q. ENter Index. No OPeration (ENl o). INcrease A. INcrease Index. Substitute Address Upper. Substitute Address Lower. Index SKip. Selective SeT. Selective CoMplement. Selective CLear. Selective SUbstitute. LoaD Logical. ADd Logical. SuBtract Logical. STore Logical. A Right Shift. Q Right Shift. Long Right Shift. A Left Shift. Q Left Shift. Long Left Shift. SCale A. SCale aQ. Replace ADd. Replace SuBtract. Replace Add One. Replace Subtract One. Storage SKip. Storage SHift. Equality Search. THreshold Search. Masked Equality Search. Mashed THreshold Search. A JumP. (a)m, v Q JumP. (a)m, v A Return Jump. (a)m, v Q Return Jump (a)m,b,v (a)m,b,v (a)m, v (a)m,v (a)m,v (a)m,v (a)m,v (a)m,v (a)m,v Index JumP. SeLective Jump. Selective Jump Selective Jump Selective Jump ReTurn Jump. selective Return selective Return selective Return NZ PL MI ARJ,ZR~/ NZ PL MI QRJ,ZRY NZ PL MI IjP SLJ SJl SJ2 SJ3 RTJ RJl RJ2 RJ3 \ '''-.- ~/ key 1. key 2. key 3. Jump key 1. Jump key 2. Jump key 3. In AjP,QjP,ARJ and QR] a modifier is required and does not cause insertion of the single precision augment instruction. © 1963 by Auerbach Corporation and BNA Incorporated 6/63 247: 171.8401 CDC 3600 171. • 84 Direct (Contd. ) § Operation Field SLS SSI SS2 SS3 SRJ SRI SR2 SR3 DLDA,CM,MG DSTA,CM,CL,MG DFAD,RP,CM,MG,UN,UR DFSB,RP,CM,MG, UN, UR DFMU,CM,MG,UN,UR DFDV,CM,MG,UR XMIT,CM,AUG MK PC SEQU, I SMEQ,I SEWL,I SMWL,I LSTU LSTL NBJP,ST CL CM ZBJP,ST CL CM EXEC RGJP, s }lJilE BRTJ BJSX LEYT,Ao,Ei, LI,CL Qo RI SBYT,Ao,Ee, LI,CL Qo RI SCAN,Qo,Ee,EQ GT LT NE LE GE INF CONN EXTF BEGR BEGW COPY,CW,CWA CLCH IPA ALG MPJ CPJ DRJ Address Field (a)m,b,v (a)m, v (a)m, v (a)m, v (a)m,v (a)m,v (a)m, v (a)m, v (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a)m,b,v (a)m, b, v (a)m, (i)n Instruction SeLective Stop. Selective Stop jump key 1. Selective Stop jump key 2. Selective Stop jump key 3. Stop Return Jump. Selective Stop Return jump key 1. Selective Stop Return jump key 2. Selective Stop Return jump key 3. Double precision LoaD A. Double precision STore A. Double precision Floating ADd. Double precision Floating SuBtract. Double precision Floating MUltiply. Double precision Floating DiVide. TRANSMIT (a)m, n (a)m, n (a)m,n (a)m, n b,v b,v p,g,m,b Search for EQUality. Search for Masked Equality. SEarch Within Limits. Search Magnitude Within Limits. Locate liST element Upper. Locate liST element Lower. Non zero Bit JumP. p,g,m,b Zero Bit JumP. (a)m,b,v p,y,m,b (a)m,b,i (a)m,b,i (a)m,b,i (a)m,b,i m,b,v EXECute. ReGister JumP y Unconditional Bank Jum~. unconditional Bank JumP Lower. unconditional Bank ReTurn Jump. Bank Jump and Set indeX. Load BYTei! m,b,v Store BYTe ~/ m,b,v SCAN byte'y m INternal Function. CONNect. EXTernal Function. BEGin Read. BEGin Write. COpy status. CLear CHannel. InPut to A. y perform ALGorithm. Main Product register Jump. x Channel Product register Jump. D Register Jump. INPUT/OUTPUT CONTROL WORDS IOSW,C (a)m, w Skip words (write zeros under Word count control). IOTW,C (a)m, w Transmit data under Word count control. IOSR,C (a)m,w Skip words (write zeros) under word count or to end of Record (and write end of record). IOTR,C (a)m,w Transmit data under word count or to end of Record (and write end of record). (a)m IOJP JumP to (a)m for next control word. 3/ In RGlP the modifier s is required. 4/ In LBYT, SBYT and SCAN the modifiers Ao or Qo and Ee are required. If neither LI nor RI - appear, no indexing will be assumed. x,e,c,n x,c,n x, (a)m,n x(a)m,n x,b x ! 6/63 ~ 'IA-U-ER-BA-CH-_-=-' 247:201.001 CDC 3600 System Performance NOTES ON SYSTEM PERFORMANCE § 201. File Processing The main file in the File Processing Problem has been condensed by designing the system to take maximum advantage of features of the CDC 3600 order code, in particular the "Jump on Flag" instruction. Accordingly: (1) Trailers were used to handle data which might not be physically present. (2) Flags were added to denote the presence or absence of trailers. (3) Most data was stored in binary form, reducing the space requirement. (4) The 20-character field for the name was broken into words. Flags were used to denote the number of words. These practices reduced the data volume of the main file to an average of 8.6 words of 48 bits, i.e., the equivalent of Sixty-eight 6-bit BCD characters. © 1963 by Auerbach Corporation and BNA Incorporated 4/63 247:201.011 CDC 3600 System Performance CDC 3600 SYSTEM PERFORMANCE © 1963 by Auerbach Corporation and BiolA Incorporated 4/63 CDC 3600 241:201.012 CDC 3600 SYSTEM PERFORMANCE WORKSHEET DATA TABLE 1 Configuroti on Worksheet Reference Item VI B, VII B (Blocked) t 1 msec/block INPUTOUTPUT TIMES 1,000 1,000 1,000 (File 1) 15 15 15 IS File 1 = File 2 17 17 17 17 File 3 17 6 17 6 File 4 17 6 17 6 --- --- --- ----- --- --- ----- --- --- --- File 1 = File 2 0.1 0.1 0.1 0.1 File 3 0.1 0.004 0.1 0."04 File 4 0.1 0.008 0.1 0.008 al 0.12 0.12 0.12 0.12 ~ File 3 File 4 msec penalty 2 msec/b1ock VIII B (Unblocked) 1,000 File 1 = File 2 maBc/_witch VIII B (Blocked)t (File 1) Char/block Records/block VI.B, VII B (Unblocked) msec/record CENTRAL PROCESSOR msec/detai1 TIMES msec/work a2 0.13 0.13 0.13 0.13 b6 0.32 0.32 0.32 0.32 b5 +b9 0.225 0.225 0.225 0.225 msec/report b7 0.63 0.63 0.63 0.63 maec a1 0.12 0.12 0.12 0.12 a2 K 0.25 0.25 0.25 0.25 a3 K 24.00 24.00 24.00 24.00 0.1 0.1 3 for C. P. and dominant column. STANDARD PROBLEM A F= 1.0 + b8 File 1 ·Master In 0.1 File 2 Master Out 0.1 0.1 0.1 0.1 File 3 Details 0.15 0 0.15 0 File 4 Reports 0.2 33.0 24.92 50.0 STANDARD PROBLEM A SPACE 17.0 0 24.57 93.0 0.2 33.0 110.0 24.92 33.0 0 93.0 24.57 93.0 Unit of measure (48-bit word) Std. routines 2,048 2,048 2;048 2,048 Fixed 1,024 1,024 1,024 1,024 3 (Blocks 1 to 23) 400 400 400 400 6 (Blocks 24 to 48) 600 600 600 600 1,000 622 1,000 622 200 200 200 200 5,272 4,894 5,272 4,894 4:200.1151 Filea Working Total t Detail records are blocked 10 recorda per 1,000-character block. Reports are blocked 8 records per I,OOO-character block. 4/63 0.1 4:200.1132 4:200.114 Total <4 17.0 4:200.112 ~ I AUERBACH I ~ SYSTEM PERFORMANCE 247:201.013 CDC 3600 SYSTEM PERFORMANCE (Contd.) WORKSHEET DATA TABLE 2 Configuration Worksheet /tem Reference All (Blocked) 5 All (Unblocked) Fixed/Floating point input 606 MTU 606 MTU output 606 MTU 606 MTU input SO char 1,000 char output IDS char 1,000 char Unit name Size of record STANDARD MATHE. MATICAL msec/b1ock PROBLEMA input T1 6 output T2 6 input T3 0 0.1 output T4 0 0.1 msec/record T5 O.OS O.OS msec/5 loops T6 0.665 0.665 msec/report T7 0.67 0.67 4:200.413 msec penalty 7 Unit nsme 606 MTU Size of block 960 char Records/block B STANDARD STATISTI· moec/block CAL PROBLEM A Tl t 16 4:200.512 maec penalty C.P. st T3 0.1 msec/block T5 0.15 maec/record T6 0.003 msec/table T7 O.OlS Detail records are blocked 10 records per 1,000·character block. Reports are blocked 8 recorda per 1,000·character block. © 1963 by Auerbach eorp'orotion and BNA Incorporated 4/63 • 247:201.100 STANDARD EDP • R£PQRTS CDC 3600 System Performance SYSTEM PERFORMANCE § 201. .112 Computation: . . 113 Timing Basis: . .1 GENERALIZED FILE PROCESSING .11 Standard File Problem A (Unblocked & mocked) . 111 Record Sizes Master File: Detail File: Report File: . standard. . using estimating procedure outlined in Users' Guide, 4:200.113. • 114 Graph: . . . . . . . . ; . see graph below • .115 Storage Space Required: 5,272 words • 108 characters. 1 card. 1 line. 100.00 7 4 2 10.00 7 4 Time in Minutes to Process 10, 000 Master File Records 2 1.00 7 VIB, VIIB ~ 4 ~ ~ ",-7 - - ------.~ '-"VI~ ..... V - - - --- 1--'---- 2 - VIIIB ---- --- VIB, VIlB 0.1 0 7 4 2 0.0 1 0.0 I \ 0.1 0.33 1.0 Activity Factor Average Number of Detail Records Per - -- - - Ma~ter Record mocked Records Unblocked Records ©"1963 by Auerbach Corporation and BNA Incorporated 4/63 247:201.120 CDC 3600 §201. .12 • 122 Computation: • .123 Timing Basis: • standard • using estimating procedure outlined in Users' Guide, 4:200.12 . see graph below • Standard File Problem B (Unblocked & mocked) . 121 Record Sizes Master File: Detail File: Report File: • 124 Graph: . • . . • 54 characters. 1 card. 1 line. 100.00 7 4 2 10.00 7 4 Time in Minutes to Process 10, 000 Master File Records 2 1.00 7 VlB, VIIB __ 4 ...... ~~ ~ -------- --- -- V / _ I-- -- 2 ltt.V" 0.1 0 -- ----- -,," VIIIB ----- VIB, VIIB " , .", VUlB 7 4 2 0.0 1 0.0 0.1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record - 4/63 - - - Detail File mocked Detail File Unblocked SYSTEM PERFORMANCE 247:201.130 § 201. .13 .132 Computation: . . 133 Timing Basis: • Standard File Problem C (Unblocked & mocked) .131 Record Sizes Master File: Detail File: Report File: . 134 Graph:. . • . . 216 characters. 1 card. 1 line. • standard • • using. estimating procedure outlined in Users' Guide, 4:200.13 . · see graph below. 100.00 7 4 2 10.00 7 Time in Minutes to .Process 10,000 Master File Records 4 2 VIB:it VIIB 1.0 0 7 ...--- ~ 4 "=--- -- -- -- -----.-- .......A" ~ 7r---------~ VIIIB/ 2 0.1 0 7 4 2 0.0 1 0.0 1.0 0.33 0.1 Activity Factor Average Number of Detail Records Per Master Record I \, - © 1963 - - - Detail File mocked Detail File Unblocked by Auerbach Corporation and BNA Incorporated 4/63 247:201.1.40 CDC 3600 § 201. .14 . 142 Computation: • .143 Timing Basis: . • trebled . · using estimatinKprocedure outlined in Users' Guide, 4:200.13. • see graph below • Standard File Problem D (Unblocked & mocked) .141 Record Sizes Master File: • Detail File: Report File: . • 144 Graph: . • • • • • 108 characters. .1 card. . 1 line. 100.00 7 4 2 10.00 7 4 Time in Minutes to Process 10,000 Master File Records 2 1.00 7 .-.- VIB, VIIB 4 ~ --"" ~ ~ ----7 --- 2 -- --- ----- VIII~ 1----.- ---- -~-- VIB, VIIB - --- VIIIB o. 10 7 4 2 o. 01 0.0 0.1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record - 4/63 - - - Detail File Blocked Detail File Unblocked SYSTEM PERFORMANCE § \ '. 247: 20 1. 200 201. Timing Bas'is: using estimate procedure outlined in User's Guide, 4:200.213 Graph: . . . . . . see graph below . .213 .2 SORTING .21 Standard Problem Estimates . 211 .212 Record size: . Key Size: . 214 80 characters. 8 characters. 1,000.0 7 4 2 100.0 7 4 Time in Minutes to Put Records Into Required 2 Order ~l' ...J. II 10.0 7 ~ .1 '" V I/" 4 / / ~/ 2 2-WAY MERGE",!; VWAYMERGE !~ 1.0 , 7 / 4 ~ 1/ 1/ , ~ / / 2 'I 0.1 2 100 4 V 7 2 1,000 4 7 2 10,000 4 7 100,000 Number of Records © 1963 by Auerbach Corporation and BNA Incorporated 4/63 247:201.300 § CDC 3600 201. .312 Timing basis: •3 MATRIX INVERSION .31 Standard Problem Estimates • • • . using estimating procedure outlined in User's Guide, 4:200.312 • • 313 Graph: see graph below • .311 "Basic parameters:o • • general, non-symmetric matrices, usingfloating point to at least 8 decimal digits. 10,000 7 4 2 J 1.000 I I 7 I I I 4 I II 2 ~ Time in Minutes for Complete Inversion I) 0.100 7 II I 4 / 2 I 0.010 7 I I 2' I 7 0.00 1 2 2 7 I - 4 100 10 Size of Matrix 4/63 2 7 4 7 1,000 SYSTEM PERFORMANCE § 247:201.400 201. 5 fifth - order polynom ials • 5 divisions. 1 square root. using estimating procedure outlined in Users' Guide, '4:200.413. see graph below . .412 Computation: • \ .4 GENERALIZED MATHEMATICAL PROCESSING .41 Standard Mathematical Problem A Estimates (Uriblocked & Blocked) .413 Timing l?asis: . . 414 Graph: .411 Record sizes: . . • . . • 10 signed numbers, avg. size 5 digits, max. size 8 digits. ALL CONFIGURATIONS ONE WORD LENGTH (36 BIT PRECISION); FLOATING POINT R = NUMBER OF OUTPUT RECORDS PER INPUT RECORD 1,000.0 7 4 2 100.0 7 4 Time in Milliseconds per Input Record ..4' 8 ~~ 2 R); 10.0 Ie: = 0.1, 0.01 7 11 4 I./.~ R = 1.0, 0.1, 0.01 \ 2 _t. ----- 1- ~ 1-- .;' -~ ~' 1.0 7 4 2 0.1 2 4 2 7 0.1 1.0 4 7 2 10.0 4 7 100.0 C, Number of Computations per Input Record - - - - Detail File mocked Detail File Unblocked © 1963 Auerbach Carporation and Info, Inc. Reprinted 9/63 247:201.500 CDC 3600 Ii 201. .5 GENERALIZED STATISTICAL PROCESSING . 51 Standard Statistical Problem A Estimates .511 Record size: . . . . . . 513 Timing basis: thirty 2-digit integral numbers. \ augment T elements in cross-tabulation tables . using estimating procedure outlined in Users' Guide, 4:200.513 see graph below. .512 Computation: .514 Graph: 10,000 7 '. 2 0 1,000 7 4 Time in milliseconds per record 2 100 7 4 2 ~ 10 7 / L 4 / 2 2 4 7 4 2 7 2 100 10 T. Number of Augmented Elements 9/63 Revised \ / fA AUERBACH ® 4 7 1,000 247:211.101 CDC 3600 Physical Characteristics CDC 3600 PHYSICAL CHARACTERISTICS © 1963 by Auerbach Corporation and BNA Incorporated 5/63 247:211.102 CDC 3600 CDC 3600 PHYSICAL CHARACTERISTICS Unit Name Console Data Interchange 1 to 5 Channels Data Interchango 6 to 8 Channels Starage Module StC»'age Module Camputatian Module IDENTITY Model Number Height X Width X Depth, in. 3601 3602 3602 3603 3609 3604 44xll0x75 a 75 x81 X20 75 Xl21 x78 75x79x81 75x79x81 75 x 161X20 900 2,000 3,100 2,000 1,100 4,000 Weight, Ibs. PHYSICAL Maximum Cable Lengths Temperature, ·F. Storage Ranges Humidity, % Temperature, 0 50 to 70 (equipment), 60 to 85 (room) F. Working Ranges ATMOSPHERE I I Humidity, % 40 to 60 Heat Dissipated, BTU/hr. 4,300 12,000 18,000 16,000 8,000 17,000 350 700 1,050 700 350 1,400 Air Flow, cfm. Mechanical filtera with a 30'7. efficiency using N.B.S.b discoloration test with atmospheric dust. Electrostatic filters with 90'7. efficiency at 500 fpm. Intemal Filtera Nominal 208 115 208 115 208 115 208 115 208 115 208 115 Tolerance 10'7. 10'7. 10'7. 10'7. 10'7. 10% 10'7. 10'7. 10'7. 10'7. 10'7. 10'7. Nominal 400 60 400 60 400 60 400 60 400 60 400 60 Tolerance 5'7. 5'7. 5'7. 5'7. 5'7. 5.,. 5.,. 5.,. 5.,. 5.,. 5.,. 5.,. 3 phase Bingle phase 3 phase single phase 3 phase single phase 3 phase single phase 3 phase single phase 3 phase single phase 1.0 0.175 3.0 0.35 4.5 0.525 4.2 0.35 2.1 0.175 4.0 0.7 Voltage ELECTRICAL Cycles Phases and Lines LoadKVA NOTES 5/63 aTwo arms at 120 degrees. bNational Bureau of Standards. 247:211.103 PHYSICAL CHARACTERISTICS CDC 3600 PHYSICAL CHARACTERISTICS (Contd.) Magnetic Tape Controllers Peripheral Controller Model Number 3621- 3626 3681-3682 Height X Width X Depth, in. 78X96X27 2,000 Unit Name IDENTITY Weight, lbs. Magnetic Card Reader Card Punch High Speed Printer Paper Tape Reader Punch 606 3641 3642 3655 3691 75X40X20 72x28x33 41 X30X 18 52x40x26 61x47x34 40x53x29 1,100 800 210 700 1,600 600 7,700 5,100 1,200 540 606 Tope Unit PHYSICAL Maldmum Cable Lengths Temperature," of. Storage Ranges Humidity, "/. Temperature, "F • Working Ranges ATMOSPHERE ... 50"to 70 (equipment), 60 to 85 (room) Humidity, ,.. 40 to 60 4~900 Heat Dissipated, BTU/hr. to 8,500 4,300 10,000 710 700 350 1,000 100 Air Flow, cfm. 3,600 Mech;..ucal fUters witb a 30% efficiency using N.B.S. b discoloration test with atmospheric dust. Electrostatic fUters with 90"1. efficiency at 500 fpm. Intemel Filters Nominel 2()1I 115 208 115 208 115 115 115 115 Tolerance 10"1. 10,.. 10% 10,.. 10,.. 10,.. 10"/. 10"1. 10"1. Nominel 400 60 400 60 60 60 60 60 60 5,.. 5"/. 5"/. 5,.. 5% 5,.. 5,.. 5% 5,.. Voltage ELECTRICAL Cycles Tolerance Phases and Lines LoadKW NOTES 3 elngle single 3 phase phaBe phase phase 1.0 to 1.5 0.35 1.0 0.175 3 phase 1.2 single phase single phase single phase single phase 0.21 1.06 2.3 1.5 Varia~ons depend on model used. © 1963 by Auerbach Corporation and BNA Incorporated 5/63 247:221.100 _STANDARD • EDP ""'RTS CDC 3600 Price Data PRICE DATA § 221. IDENTITY OF UNIT \ CLASS STORAGE No. 3609 & COMPUTATION 3603 3604 3601 COMMUNICATION 3602 3606 3607 3608 3681 3682 INPUTOUTPUT 3641 3642 3643 3655 3691 3692 606 ;,621 3622 3623 3624 3625 3626 POWER 3667 Name Storage Module, 16,384 Words Magnetic Core Storage Storage Module, 32,768 Words Magnetic Core Storage Computation Module; Includes Real Time Cloc;.k Console; Includes Type\'lI"iter PRICES Monthly Rental $ Monthly Maintenance $ Purchase $ 7,455 800 290,000 14,360 20,755 1,790 1,285 1,825 125 560,000 810,000 70,000 Communication Module Standard Bi -directional Data Channel Special 24-bit Data Channe1--See Note 1 Special 48-bit Data Channel--See Note 1 Data Channel Converter for 160/160-A; Permits use of 3600 peripheral equipment Satellite Coupler; Permits direct communication between 160/160-A and 3600 3,255 900 900 900 275 125 150 160 126,000 35,000 35,000 35,000 275 20 10,800 415 25 16,200 Card Reader; 250 cpm Card Punch; 100 cpm Card Reader Controller, Controls 088 Card Reader (include the 088) High-Speed Line Printer; 1000 1pm Paper Tape Reader/Punch Program Controlled Input/Output Typewriter Magnetic Tape Transport Magnetic Tape Controller; Two Read-Write Controls to control one to eight 606 Magnetic Tape Transports Magnetic Tape Controller; Two Read-Write Controls to control one to sixteen 606 Magnetic Tape Transports Magnetic Tape Controller; Four Read-Write Controls to control one to eight 606 Magnetic Tape Transports Magnetic Tape Controller; Four Read-Write Controls to control one to sixteen 606 Magnetic Tape Transports Magnetic Tape Controller; Three Read-Write Controls to control one to eight 606 Magnetic Tape Transports Magnetic Tape Controller; Three Read-Write Controls to control one to sixteen 606 Magnetic Tape Transports 695 630 150 90 27 ,000 24,500 1,240 1,840 640 280 825 100 400 125 70 140 49,000 73,500 25,000 11,000 36,000 2,700 215 105,000 4,000 305 155,000 3,600 290 140,000 4,750 380 185,000 3,430 250 133,500 4,350 340 169,500 795 80 31,000 Power Converter and Power Control Note 1: Available for special applications only. Note 2: Increasing Core Storage from 16K to 32K • • • • • • • . • $350, 000. © 1963 by Auerbach Corporation and BNA Incorporated 4/63 / I CDC 3100 '",- - j Control Data Corporation c ........ ( \. AUERBACH INFO, INC. PRINTED IN U. S. A. _- ---' CDC 3100 Control Data Corporation AUERBACH INFO, INC. PRINTED IN u. s. A. 254:001. 001 CDC 3100 Contents CONTENTS 1. 2. 3. 4. 5. 6. 7. 11. 12. 14. 15. 20. 21. 22. Introduction . . . . . . . . . . . . . . ...... . Data Structure. . . . . . . .... . System Configuration. . ............ . 6-Tape Business System . . . . . . . . . . . . III V 6- Tape Auxiliary Storage System VI 6-Tape Business-Scientific System ... VITA 10-Tape General System (Integrated) .. VIIB 10-Tape General System (Paired) Internal Storage Core Storage. . . . . . . . . . . ... Central Processor. . . . .... . Console. . . . . . . . . . .. . .......... . Peripheral Equipment ... Simultaneous Operations . Instruction List .. . Data Code Table ... . Software . . . . . . . . . . System Performance .. Wo'rksheet Data Table . . . . Generalized File Processing .. . Sorting . . . . . . . . . . . . . . . . . . Matrix Inversion . . . . . . . . . . . Generalized Mathematical Processing . . . Generalized Statistical Processing . Physical Characteristics. . . . . ....... . Price Data . . . . . . . . . . . . . . . . . . . . . . . . . . 254:011 254:021 254:031 254:031.1 254:031. 2 254:031. 3 254:031.4 254:031. 5 254:041 254:051 254:061 254:071 254:111 245:121* 245:141* 254:151 254:201 254:201. 011 254:201. 1 254:201. 2 254:201. 3 254:201. 4 254:201. 5 245:211* 254:221 *Refer to indicated section of the CDC 3200 Computer System Report. ,/ ( ©1964 Auerbach Corporation and Info, Inc. 11/64 254: 011.1 00 CDC 3100 Introduction INTRODUCTION The Control Data 3100 computer system incorporates a slower version of the 3204 Basic Processor used in the Control Data 3200 computer system. It has the same instruction code (which traps and uses subroutines to handle floating-point and decimal operations), the same maximum memory size (32,768 24-bit words), and the same number of available data channels (eight). The core storage cycle time is 1. 75 microseconds (versus 1. 25 microseconds in the 3204), and the maximum system capacity for input-output data is only 450, 000 characters per second (versus the 2,670, OOO-characters-per-second capacity of the 3200 computer systems). This drastic change in input-output capacity results from the Register File being held in main core storage instead of in a separate, faster store as in the 3200. Only one word of input or output data can be transferred every five machine cycles (four are used by the Register File and one is allocated to the central processor), so that 8.75 microseconds are required for each word transferred. The Control Data 3100 system, scheduled for first deliveries in January 1965, is priced at up to about $2, 000 per month below comparable Control Data 3200 computer systems. Both syst.ems can use all the same peripherals, all the same software packages, and, for practical purposes, all the same programs. In general, however, the subroutines used for decimal and floating-point simulation in the 3100 take about twenty times longer to execute than the machine instructions available in some models of the CDC 3200 processor, so it is expected that 3100 systems will be used either where their program-compatibility with the 3200 systems or their fixed-point binary operating speeds (or both) are found to be valuable. The Control Data 3100 computer system is machine-code compatible only with the CDC 3200 and 3300 systems. It has, in addition, some compatibility through common programming languages with the Control Data 3400, 3600, and 3800 computer systems. Hardware The 3104 is a single-address, fixed word-length, binary processor. It can execute all the instructions in the Control Data 3200 computer system repertoire either by hardware or by software. It is not capable of directly processing instructions requiring floating-point or decimal arithmetic facilities, so the processor automatically "traps" these instructions and simulates their functions by the use of subroutines. The fixed-point binary instruction times are quite fast: 24-bit addition takes 3.5 microseconds, 48-bit addition takes 5.25 microseconds, and 24-bit multiplication takes 20 microseconds. Simulated floating-point operations take conSiderably longer: an addition takes . 220 microseconds and a multipiication takes 350 microseconds. An "off-line" search facility allows consecutive locations in core storage to be searched While the main program continues unhindered. The usefulness of this facility is limited by the fact that, unless the program has been carefully designed, core storage may already be "saturated" by the other demands of the processor and peripheral devices. Future developments in this area could, however, be of great value in information storage and retrieval applications. The Control Data 3100 system can be equipped with up to eight input-output data channels, enabling the system to compute while simultaneously performing up to eight read-write operations which use any eight peripheral devices in the system. Use of the available buffered peripheral units, which require little data channel time, can allow the number of concurrently operating peripherals to increase to well beyond the number of data channels in a system. Many of the input-output controllers supplied with Control Data 3100 computer systems have two or more data channel connections. Such controllers can be used to switch peripheral units between two computer systems. The use of more than one central processor in an installation is comparatively frequent in Control Data 3000 Series installations, as both peripheral units and storage modules can be easily switched under program control. Significant recent announcements by Control Data have included IBM System/360compatible magnetic tape units and the proviSion of controllers for the IBM 1311 and 2311 Disk Storage Drives. The present peripheral units available with the 3100 computer system (and with all Control Data 3000 Series computer systems) include: • Model 828 and 838 Disk Files Capacity: 33 or 66 million characters Access time: 187 milliseconds average © 1964 Auerbach Corporation and Info, Inc. 11/64 254:011.101 CDC 3100 • IBM 1311 and 2311 Disk Storage Drives Capacity: 3 or 9.7 million characters Access time: 170 milliseconds average • Model 3235 Drum Storage Capacity: 0.5 million characters Access time: 17 milliseconds average Data transfer rate: 167, 000 characters per second • Model 861 and 862 Drum Storage Capacity: 4.2 or 2.1 million characters Access time: 17 or 8.6 milliseconds average Data transfer rate: up to 2,000,000 characters per second • Punched card equipment Maximum reader speed: 1,200 cards per minute Maximum punch speed: 250 cards per minute • Paper tape equipment Maximum reader speed: 1, 000 frames per second Maximum punch speed: 110 frames per second • Line printing equipment CDC 501: 1,000 lines per minute CDC 505: 500 lines per minute CDC 3152: 150 lines per minute IBM 1403 Model 2: 600 lines per minute IBM 1403 Model 3: 1,100 lines per minute • 7-track and 9-track magnetic tape units Maximum 7 -track speed: 120,000 six-bit characters per second Maximum 9-track speed: 90,000 eight-bit characters per second Software The major assembly language for the Control Data 3100, 3200, and 3300 computer systems is called 3200 COMPASS. It bears only a general resemblance to the COMPASS language used for the Control Data 3600, and programs written in the two assembly languages are not interchangeable. The 3200 COMPASS assembler requires 8, 192 words of core storage and 5 inputoutput devices, including at least 2 magnetic tape units, during the assembly process. The output of the assembler is machine-language coding suitable for use with the SCOPE Operating System. A reduced form of the 3200 COMPASS assembler, with no macro facilities, is available for Control Data 3100 computer systems which have only 4, 096 words of storage. The standard mathematical compiler is 3200 FORTRAN. This compiler uses a FORTRAN IV style language which is not simply an exact copy of some other language, but rather an independently designed scientific programming language that offers a number of performance-improving features. In this respect it appears that Control Data is continuing a policy established in its FORTRAN-63 compiler for the CDC 1604, that of constructively re-evaluating the "standard" language before implementation. This policy gives promise of continued improvements in FORTRAN. Programs written in 3200 FORTRAN can be compiled on any Control Data 3100, 3200, or 3300 computer system that has at least 8,192 words of core storage, 3 magnetic tape units, and 2 other input-output devices. The 3200 FORTRAN compiler was released to customers in November 1964. A Basic FORTRAN II system is available for smaller configurations. COBOL language processing is provided for the Control Data 3100, 3200, and 3300 computer systems by the 3200 COBOL compiler. The language includes almost all of Required COBOL-61, and the compiler requires a 4, 096-word system with 3 tape units and 2 other input-output devices for compilation. Release of 3200 COBOL'to customers is scheduled for March 1965. The SCOPE Operating System helps to assemble programs and to provide input-output services as required. It uses between 700 and 1,500 core storage locations to hold the resident program during operation; the exact amount depends upon the number and type of input-output routines required by a particular program. At present 3200 SCOPE is oriented toward magnetic tape proceSSing, but a random access enhancement, specifically designed to service the IBM 1311 and 3211 Disk Storage Drives, is expected to be released in Spring 1965. Other program packages under development include a Report Generator (scheduled for June 1965), a Linear Programming Package (June 1965), and a PERT Package (March 1965). 11/64 254: 021. 1DO CDC 3100 Data Structure DATA STRUCTURE ·1 .2 STORAGE LOCATIONS Name of Location Size Purpose or Use Word: 24 bits Character: Block: 6 bits 1 to N characters or 1 to N words basic addressable unit (data or instruction). addressable data unit. ~earch, Move, and Inputoutput instructions . INFORMATION FORMAT Type of Information Representation Operand: . . . . . . 24- or 48-bit fixed point word. 48-bit floating point word. 6-bit character. 4-bit BCD character. lor 2 words. 1 to 13 BCD characters. Instruction: Field: ©1964 Auerbach Corporation and Info, Inc. 11/64 254:031.001 CDC 3100 System Configuration SYSTEM CONFIGURATION GENERAL Every Control Data 3100 computer system includes the following units: • A 3104 Processor. • A 1. 75-microsecond Core Storage Unit ranging from 4,096 to 32,768 words (16,384 to 131,072 characters) in capacity. • An integrated console with detachable keyboard. • A Power Converter and Control Unit. One 3106 Data Channel is included in the basic system. Up to seven more can be added, so that a fully-extended Control Data 3100 computer system will have eight data channels. Eight peripheral units or controllers can be connected to each data channel. The data channels used in all of the Control Data 3000 Series computers present a common interface with peripheral units. As a result of this, any of the 3000 Series peripheral units can be connected through a 3106 Data Channel to a Control Data 3100 computer. The available peripheral units are described in the Control Data 3200 Computer System Report. Details of the loadings these units place on a Control Data 3100. computer system are described in the Simultaneous Operations section of this report, starting on page 254:111.100. Some peripheral units or controllers can be connected to more than one data channel. This facility may be used either to allow two concurrent data transmissions to take place, or to allow the peripheral unit to be switched between two computer systems. A bank of magnetic tape units connected to a dual-channel controller is a case where multiple data transmissions would be the normal reason for having the two data channels; while a printer connected to two different computer systems by way of a dual-channel controller could be used by either system, as the situation in the computer room demands. The core storage modules can similarly be connected to, and accessed by, two computers. Each 16, 384-word module is independent and permits dual access by a second processor or special device. SELECTION OF REPRESENTATIVE CONFIGURATIONS The Control Data 3200 computer system is shown in the follOwing Standard System Configurations, as defined in the Users' Guide, page 4:030.100: • Configuration V; 6-Tape Auxiliary Storage Configuration. • Configuration VI; 6-Tape Business/Scientific Configuration. • • Configuration VIlA; 10-Tape General Integrated Configuration. Configuration VIIB; 10-Tape General Paired Configuration, using a Control Data 160 Computer System as the satellite system. ,/ 11/64 SYSTEM CONFIGURATION .1 254:031.1 00 6-TAPE AUXIIlARY STORAGE SYSTEM; CONFIGURATION V Deviations from Standard Configuration: . auxiliary storage capacity is 65% larger. card reader is 140% faster. card punch is 150% faster. magnetic tapes are 40% faster. Equipment 828 Disk File (33 million char) 3432 Controller 8,192 words of Core Storage 3104 Computer $ 2,400 1,050 700* 2,700* Monitor Typewriter 240 3106 Data Channels (2) 120* 405 Card Reader (1,200 cpm) 3248 Controller 400 100 415 Card Punch (250 cpm) 3245 Controller 295 330 505 Line Printer (500 lpm) 3256 Line Printer Controller 635 515 603 41. 7KC Magnetic Tape Units (6) 3229 Controller TOTAL RENTAL: 3,300 600 $13,385 * The rental for the 3104 Computer includes the charges for the first 4,096 words of core storage and for the first 3106 Data Channel. .. ", ©1964 Auerbacn Corporation and Info, Inc. 11/64 254:031.200 .2 CDC 3100 6-TAPE BUSINESS/SCIENTIFIC SYSTEM; CONFIGURATION VI Deviations from Standard Configuration: . card reader is 140% faster. card punch is 150% faster. magnetic tapes are 40% faster. no floating point hardware. Eguipment 16,384 words of Core Storage 3104 Computer 2,700* Monitor Typewriter 240 3106 Data Channels (2) 120* 405 Card Reader (1,200 cpm) 3248 Controller 400 100 415 Card Punch (250 cpm) 3446 Controller 295 450 505 Line Printer (500 lpm) 3246 Line Printer 635 515 603 41. 7KC Magnetic Tape Units (6) 3229 Controller TOTAL RENTAL: * The rental for the 3104 Computer includes the charges for the first 4,096 words of core storage and for the first 3106 Data Channel. 11/64 $ 1,510* 3,300 600 $10,865 254:031.300 SYSTEM CONFIGURATION .3 10-TAPEGENERAL SYSTEM (INTEGRATED); CONFIGURATION VIIA Deviations from Standard Configuration: . core storage is 33 % larger. 3 less index registers provided. card reader is 140% faster. card punch is 150% faster. no floating point. Equipment Rental 32,768 words of Core Storage $ 3,310* 3104 Computer "- Monitor Typewriter 240 3106 Data Channels (4) 360* 405 Card Reader (1,200 cpm) 3248 Controller 400 100 415 Card Punch (250 cpm) 3446 Controller 295 450 505 Line Printer (500 lpm) 3256 Controller 635 515 604 60KC Magnetic Tape Units (6) 3229 Controller 3,600 600 604 60KC Magnetic Tape Units (4) 3228 Controller 2,400 425 TOTAL RENTAL: * 2,700* $16,030 The rental for the 3104 Computer includes the charges for the first 4,096 words of core storage and for the first 3106 Data Channel. ./ ©J 964 Auerbach Corporation and info, inc. 11/64 254:031.400 .4 CDC 3100 10-TAPE GENERAL SYSTEM (PAIRED); CONFIGURATION VIIB* Deviations from Standard Configuration: . 3 less index registers. direct connection to satellite system. card reader is 1100% faster. no floating point hardware. Eguipment 16,384 characters of Core Storage 3104 Computer To Satellite 160 System (at right) 2,700* Monitor Typewriter 240 3106 Data Channels (2) 120* 405 Card Reader (1,200 cpm) 3248 Controller 400 100 604 60KC Magnetic Tape Units (4) 3228 Controller 2,400 425 604 60KC Magnetic Tape Units (4) 3228 Controller 2,400 425 TOTAL ON-LINE EQUIPMENT: $10,720 TOTAL SATELliTE EQUIPMENT: $ 5,165 TOTAL RENTAL: $15,885 * This rental for the 3104 Computer includes the charges for the first 4, 096 words of core storage and for the first 3106 Data Channel. 11/64 $ 1,510* SYSTEM CONFIGURATION 254:031.401 SATELLITE EQUIPMENT (CDC 160) Deviations from Standard Configuration: . direct connection to main system. core storage is 100% larger. multiply/divide is included. paper tape equipment is included. card reader is 140% faster. card punch is 150% faster. magnetic tapes are 30% slower. Equipment 4,096 words of Core Storage 160 Processor $1,500 Console with Monitor Typewriter Paper Tape Reader (350 cps) Paper Tape Punch (110 cps) / ( 3681 Data Channel Converter 3682 Satellite Coupler 275 175 405 Card Reader (1,200 cpm) 3248 Controller 400 100 415 Card Punch (250 cpm) 3446 Controller 295 450 505 Line Printer (500 lpm) 3256 Controller 635 515 601 21KC Magnetic Tape Units (2) 3127 Controller 500 320 TOTAL SATELLITE EQUIPMENT: ". $5,165 To 3100 System (at left) I \. \ " ©1964 Auerbach Corporation and Info, Inc. 11/64 254:041.100 CDC 3100 Internal Storage Core Storage INTERNAL STORAGE: CORE STORAGE .1 GENERAL . 11 Identity: . . .12 · 13 Reserved Storage: . .2 PHYSICAL FORM .21 Storage Medium: magnetic cores. .23 Storage Phenomenon: direction of magnetization. Description · 24 Recording Permanence A Control Data 3100 computer system can have between 4, 096 and 32,768 24-bit word locations of core storage, operating with a cycle time of 1.75 microseconds per word. Overlapping of storage cycles, in order to reduce the loading placed on the central processor by input-output operations, is only possible in those systems which have 32,768 words; in smaller systems all of the core storage cycles at the same time, making it impossible to overlap one cycle with another. .241 Data erasable by instructions: . . . . . 242 Data regenerated constantly: . · 243 Data volatile: . . 3103 Storage Module (16K) . 3108 Storage Module (4K). 3109 Storage Module (8K). Basic Use: working storage and operational control. Sixty-four words of core storage are reserved for an Integrated Register File. This file contains the sequence control registers, input-output controls, and Autoload and Autodump entries. The functions of the Integrated Register File are described in the central processor section of this report, on page 254:051.100. Each physical storage location consists of 28 bits, of which 24 are data bits and 4 are parity bits. The 24 data bits are functionally broken down into four 6-bit characters, and one of the parity bits is associated with each separate character. Addressing of core storage can be by word or character, using 15 bits or 17 bits per address, respectively. The core storage can be connected directly to a single Control Data 3104 central processor, or it can be shared by two independent 3104 processors. When the core storage is shared, manual switches on the outside of each module allow the operator to allocate the store to either computer, or to enable them to share it on a no-priority basis. · 14 Availability: . . ? · 15 First Delivery: January, 1966. .31 · 244 Data permanent:. · 245 Storage interchangeable: . . yes . no. no (safeguarded by poweroff interrupt). no. no. .27 Interleaving Levels:. no interleaving as such; however, two 3103 Storage Modules provide asynchronous operation with overlapped accesses. .28 Access Techniques: . coincident current. .29 Potential Transfer Rates .292 Peak data rates Cycling rates: . Unit of data: . Data rate: . . . 570,000 cps. word or character. 570,000 words (or characters)/sec. .3 DATA CAPACITY .31 Module and System Sizes (See table below.) .32 Rules for Combining Modules: . • • . . .4 CONTROLLER .41 Identity:. four possibilities are shown in preceding entry; there may be others. no separate controller required. Module and System Sizes Minimum Storage Identity: \ 64-word Integrated Register File. .16 Modules: Words: Characters: Instructions: 3108 Storage Module 1 4,096 16,384 4,096 Maximum Storage 3109 Storage Module 1 8,192 32,768 8,192 3103 Storage Module 1 16,384 65,536 16,384 ©1964 Auerbach Corporation and Info,lnc. 2 3103 Storage Modules 2 32,768 131,072 32,768 11/64 254:041.420 · 42 Connection to System: CDC 3100 one core memory can be connected to one or two 3104 Central Processors. ACCESS TIMING .51 Arrangement of Heads: 1 read/write control per system, except for 32K systems, which have 2 read/write controls and permit overlapped operations. .53 Simultaneous Operations: .6 11/64 CHANGEABLE STORAGE: . .72 Transfer Load Size .73 none, except in 32K systems, where access to each 16K module is asynchronous and independent. ? 1. 75 !lsec. 1 word or 1 character. none. 1 to 128 characters, one character at a time. 1 to 32 words, four characters (i, e., one word) at a time. Effective Transfer Rate With self: . . . . . . .8 Access Time Parameters and Variations .531 For uniform access Access time:. Cycle time: For data unit of: STORAGE PERFORMANCE With self: . . . . . ·5 · 52 .7 91,000 words/second. ERRORS, CHECKS AND ACTION Error Invalid address: Check or Interlock none high-order bits are truncated. Invalid code: not possible. Receipt of data: generate parity bit. Recording of data: record parity bit. Recovery of data: parity check halt operation; console light. Dispatch of data: send parity bit. Timing conflicts: interlock until cleared. 254:051.100 CDC 3100 Central Processor CENTRAL PROCESSOR .1 GENERAL .11 Identity: . . . . . . . . . . 3104 Computer. . 12 Description of core storage rather than in a special fast-access file as in the Control Data 3200 and 3300 computer svstems . The "block" operations use special processor controls and are of three types: Search, Move, and Input-Output. Mter one of these operations has been activated, the processor can return to its main program and continue until an interrupt is generated or the program senses completion of the block operation. Each of these operations requires three instruction words, which contain the starting and ending" addresses (or source and destination addresses for a Move command) for the operation and a "reject" instruction. The reject instruction is used if the block controls or the addressed inputoutput data channel happens to be busy. All three types of block operations are carried out on a character-by-character basis. The input-output instructions, which can also specify a word-byword transfer, are described in more detail under Simultaneous Operations (Section 245:111). The 3104 Computer is the only available central processor for the Control Data 3100 computer system. It is a fixed-point binary processor with built-in subroutines entries for floating-point and decimal operations, exactly the same as the 3204 Basic Processor. There are no optional facilities available for the 3104 Computer; the 3100 system is upward-compatible with both the Control Data 3200 and 3300 computer systems, and it is anticipated that users will move on to these systems rather than build up the capacity of the '3104. Word length of core storage locations is 28 bits (24 data bits plus 4 parity bits). One location can contain an instruction, a 24-bit fixed-point binary data word, one half of a 48-bit fixed- or floatingpoint data word, or an alphanumeric word consisting of four 6-bit BCD characters. An instruction word normally consists of a 6-bit operation (or function) code, an addressing mode bit (indirect or direct), a 2-bit index register designator, and a 15-bit core storage address field. In some cases the indirect addressing flag, index register designation, and address bits are used for other purposes such as operand values, shift counts, and extensions of the function code or address field. Only three index registers are provided, and their use is pre-empted by various instructions. To some extent this limits the programmer in his use of automatic address modification techniques. The 3100 has a program interrupt system which permits interruption when any of the following conditions occur: arithmetic faults (overflow, divisor too small, exponent too large), completion of a block operation (search, move, or input-output), manual switch operation (console key), an interrupt request from any of the eight peripheral positions on each data channel, or a real-time interrupt controlled by the Real-Time Clock. When an interrupt condition is recognized, the current instruction address is stored along with a number that indicates the specific interrupt condition, and program control is transferred to a fixed location. The programmer, however, can choose to honor or ignore any particular interrupt condition by setting appropriate bits in an Interrupt Mask regi ster . In addition, several instructions are available for sensing and clearing interrupts independently, and for either enabling or disabling the entire interrupt system. Operations which are performed by hardware are fast, although not as fast as in the 3200 processors. A fixed-point 24-bit addition requires only 3.5 microseconds. Multiplication operations take from 10.6 to 14.8 microseconds. Search operations take 5.4 microseconds for each operand inspected. Floating-point operations, which must be handled by subroutines, naturally take longer A 48-bit add operation takes about 200 micros~conds, multiplication takes 330 microseconds, and divisiontakes about 600 microseconds. The times required for simulation of decimal arithmetic operations have not yet been determined, The Register File, which controls the input-output operations, searches, and moves and performs other control functions, is held in the upper areas A special power failure interrupt automatically (and unequivocally) transfers control to a fixed location (location 00010) in the event power fails within the 3100 system. A special routine then prepares the system for an orderly shutdown so that no data will be lost. The whole operation takes a maximum of 30 milliseconds; 16 milliseconds for detection, and 14 milliseconds for processing the interrupt. .13 First Delivery: . . . . . January 1965. \. @1964 Auerbach Corporation and Info,lnc. 11/64 254:051.200 CDC 3100 .2 PROCESSING FACILITIES .21 Operations and 0I!erands Operation and Variation Provision Radix Size automatic automatic subroutine binary binary decimal 24 bits. 48 bits. 1 to 12 BCD chars. none. automatic subroutine subroutine binary binary decimal 24 bits. 48 bits. variable. DivideNo remainder: none. Remainder: automatic subroutine subroutine binary binary decimal 24 bits. 48 bits. variable. subroutine subroutine subroutine binary binary binary 36 & 11 bits. 36 & 11 bits. 36 & 11 bits. automatic none. automatic binary 24 bits. binary 24 bits. .211 Fixed point Add- subtract: MultiplyShort: Long: .212 Floating point Add- subtract: Multiply: Divide: .213 BooleanADD Inclusive OR: Exclusive OR: .214 Comparison Numbers: Absolute: Letters: Mixed: Collating sequence: automatic. none. automatic. 6-bit characters. 0- 9, A-Z, with special characters and unassigned symbols in various places; see page 245:141. 100 in CDC 3200 Computer System Report . • 215 Code translation: Code translation from external BCD to internal BCD is automatic when magnetic tapes recorded in BCD format are being used. Details of other code translations needed, and the timing of the subroutines used to accomplish the translations, are shown in Table I. . 216 Radix conversion: Radix conversion between BCD and binary forms is performed by standard subroutines. The timings of these subroutines are listed in Table I. . 217 Edit format: • . . . . . . own coding; the characterby-character search for equality or inequality appears to be the only instruction specifically oriented toward this task . . 218 Table look-upOi?eration Equality: Greater than: Greatest: Least: . 219 OthersCharacter Search: 11/64 Provision Size Comment automatic automatic none. none . by word by word entries may be spaced every 1, 2, 3, 4, 5, 6, 7, or 8 words. Masked operands are allowed. automatic character- the search is made offby-charac- line, using the block ter transfer facilities; single character equality or inequality can be searched for. CENTRAL PROCESSOR 254:051.220 TABLE I: CONVERSION TIMES FOR STANDARD SUBROUTINES ORIGINAL OPERAND MICROSECONDS REQUIRED FOR CONVERSION TO: Magnitude Internal BCD (1) Internal BCD < 107 - 18/ digit 18/digit + 25/operand 7,000/card 42,000/card Internal BCD 7 -> 10 - 32/ digit 32/digit + 25/operand 7, OOO/card 42, OOO/card Fixed Point Binary < 107 3I/dig·it - 25/operand 3I/digit + 7, 000/ card 31/digit + 42, 000/ card Fixed Point Binary 7 -> 10 62/digit - 25/opcrand 62/digit + 7, OOO/card 62/digit + 42, 000/ card Floating Point Binary < 107 3I/digit + 39/openmd 39/operand - 31/digit + 39/operand+ 7, OOO/card 31/digit + 39/operand + 42,000/card Floating Point Binary 7 -> 10 62/cligit + 39/operand 39/operand - 62/digit + 39/operand + 7, OOO/card 31/digit + 39/operand + 42. OOO/card (1) (2) (3) (4) (5) Fixed Point Floating Point Binary (2) Binary (3) Column BCD (4) Type Row BCD (5) Internal BCD is used in decimal arithmetic, for card reader input and for printer output. Fixed Point Binary is used for 24 or 48-bit binary arithmetic. Floating Point Binary is used for all floating point operations. Column BCD is used for output via buffered card punch equipment. Row BCD is used for output via unbuffered card punch equipment. Note: "digit" refers to decimal digits in all of the above times. · 22 Special Cases of Operands o .221 Negative numbers: ... one's complement. .222 Zero: . . . . . . . . . . '.. positive zero and negative zero. · 223 Operand size determination: . . . . . . . . normally 24 bits; 48 bits available in double precision and floating point instructions, and variable length of 1-12 decimal digits in BCD operations. · 23 Instruction Formats . 231 Instruction structure: . basically I-address . .232 Instruction layout I Part: b 111 2 15 · 233 Instruction parts Name f: . . . . . . . . . . . . . . a: . . . . . . . . . . . . . b: . . . . . . . . . . . . . m: . . . . . . . . . . . . . Purpose function code. indirect addressing flag. index register designation. operand address. Note: In many cases the indirect addressing flag and the index register designation are used for other purposes. These cases include: • when literals are used instead of operand addresses; when Search or Move operations are involved; o when the operand address is a register; o when selective jumps based on console keys are involved. In most BCD character operations, indirect addressing is not available, and only one specific index register can be used with a particular instruction. Register file addresses cannot be indexed or indirectly addressed. . 234 Basic address structure: . . . . . . . . . . . 1+ O. .235 LiteralsArithmetic: . . . . . . . no facility. Comparisons and tests: . . . . . . . . . . literals can be compared with index register counts and accumulator contents only; maximum size is 262,145. Incrementing modifiers:. .. . .. only in the Block Search operation. . 236 Directly addressed operands Internal storage type: . . . . . . . . . . core storage. Minimum size: . . . . . 1 character. Maximum size: . . . . 1 or 2 words. Volume accessible: .. all. .237 Address indexing .2371 Number of methods: . two. ©1964 Auerbach Corporation and Info, Inc. 11/64 254:051.2372 CDC 3100 . 2372 Names: . . . . . . . . . normal indexing. specific indexing. .2373 Indexing rule (normal indexing): . . . . addition of contents of one of the 3 index registers to the address in one's complement mode. · 2373 Indexing rule (specific indexing): . . . . . . . same as normal indexing except that a specified index register is always used with the particular instruction . . 2374 Index specification: .. bits 15 and 16, or bit 17, of instruction word. · 2375 Number of potential indexers: . . . . . . . 3. .2376 Addresses which can be indexed: . . . . . • operand addresses in arithmetic, logical, load, and store instructions, and some jump instructions. .2377 Comulative indexing:. no. .2378 Combined index and step: . . . . . • . . • . no. · 238 Indirect addressing .2381 Recursive: .. . . yes. . 2382 Designation: •... . . single bit in appropriate instructions and in each indirect operand address. . 2383 Control:........ the last address in the recursive sequence is the first address reached which has no indirect addressing flag. .2384 Indexing with indirect addressing: . index modification always takes place first. All levels of a recursive indirect address sequence may be indexed. .239 Stepping .2391 Specification of increment: .. . .. within instruction. . + or-. · 2392 Increment sign: . positive zero; tests are also · 2394 End value: ... available for comparison with literals. . 2395 Combined step and test: . . . . . . . . . . . yes, for ± 1 increments only. . 24 .32 Look-Ahead: . . . . . . . none . . 33 Interruption .331 Possible causes In-out units: ... .332 .333 .334 Special Processor Storage .241 Category of storage Number of Size in locations Program usage bits .335 Registers: 3 24 Registers: Registers: 4 57 14 24 .3 SEQUENCE CONTROL FEATURES .31 Instruction Sequencing: . . . . . . . . . . . sequential. arithmetic and instructions. address handling. I/O control, clock, temporary storage, etc. . 336 11/64 · the state of any specific device connected to one of the eight I/o controllers can initiate an interrupt. Conditions which can cause interrupts vary for different types of I/o devices, but usually include normal end of an operation, abnormal end, and inability to respond to an instruction. In-out controllers: .. the failure of an I/O controller to accept or reject a Connect or Function instruction. Processor errors: .. arithmetic overflow. divide fault (division by too small a number, not simply by zero). exponent overflow (>2 10_1). BCD fault ( irregular characters) . Other: . . . . . . . . . . power failure. real-time clock. search-move interrupt . Control by routine: ... interrupts may be masked by the program. In addition, they are automatically inhibited (except for the Power Failure Interrupt) by the entry into any interrupt routine, and a special instruction must be used to re-enable the preselected interrupts after each interrupt. Operator control: . . . . none, except that he always may originate a manual interrupt, or use the six Sense switches to set the mask. Interruption conditions: (1) an interrupt condition must arise . (2) it must not be inhibited either permanently or during the processing of an interrupt routine . (3) the priority scanner must have reached the priority level of the interrupt condition. Interruption process Disabling interruption: . . . . . . . • . · operating instruction proceeds to an orderly halt. Registers saved: . · program address register only. A nine-bit interrupt identification code is placed in a fixed location . Destination: . . . . . · 00003 or 00010 . Control methodsDetermine cause: ... own coding. Enable interruption:. own coding. 254:051.340 CENTRAL PROCESSOR .34 Multiprogramming: .• no special provisions. .35 Multi-Sequencing: •.. the block operations (search for character equality/inequality, move characters, input-output instructions) can proceed in parallel with and independently of the main program, once initiated. .4 PROCESSOR SPEEDS .41 Instruction Times in Microseconds Binary (24 bits) . 411 Fixed point Add-subtract: ... 3.5 Multiply: . . . . . . . . 10.6 to 14.8 Divide: . . . . . . 14.5 .412 Floating point Add-subtract:. . 210. * Multiply:. . . . . . 340. * Divide: . . . . . . . . . . 600. * .413 Additional allowance for Indexing: . . . . . . . . . 0.53 Indirect addressing: . 1. 8 Re-complementing: .. zero. . 414 ControlCompare: . . . . . . . . 2.6 Branch: . . . . . . . . . 1. 8 Compare and branch:. 2.6 .415 Counter control Step: . . . . . . . . . . . 1. 8 Step and test: . . . . . . 2.6 Test: . . . . . . . . . . . 2.6 .416 Edit: . . . . . . . ... not available. .417 Convert: . . . . . . . . . . see Table 1. .418 Shift: . . . . . . . . . . . . 1. 8 to 5.3. .42 Processor Performance in Microseconds .421 For random addressesFixed point (24 bits) c = ~ + b: b = a + b: Sum N items: c = ab: c \" = alb: 10.5 8.8 3.5N 19.7 23.3 Floating point* (48 bits) 220. 2220 220N. 350. 600. * Performed by subroutine initiated by "trapped" instruction code. .422 For arrays of dataFixed point Floating point* (24 bits) (48 bits) 16.49 230. ci = ai + bj 14.26 230. b· = ai + bj S6.m N item s: 6.63N 230N. 360. c = c + aibj 28.66 .423 Branch based on comparison Numeric data: . . . . . 21. 53 Alphabetic data: . . . . 31. 53 .424 Switching Unchecked: . . . 7. 63 Checked:. . . . . 12.83 List search: .. 20. 03+5N .425 Format control, per character Unpack: . . . . . . . . . 170. Compose: . . . . . . . . 170 . .426 Table look-up, per N comparisons For a match: . . . . . . 5.4 + 5.4N For least or greatest: 5.4 + 5.4N For interpolation point: . . . . . . . . . . 5.4 + 5. 4N .427 Bit indicators Set bit in pattern: ... 10.5 Test bit in pattern: .. 7.9 .428 Moving, per N words: .7.0 + 11. ON (91,000 24-bit words/ sec). .5 ERRORS, CHECKS AND ACTION Error Check or Interlock Overflow: Underflow: Divisor too small: Shift faults: check Invalid instructions: Abnormal end of an I/O operation: Action specific bit is set; optionally, interrupt occurs (interrupt system is deactivated, instruction address is stored, and a forced jump is made to a specific location for each case). Storage refer- } ence: ·t h k optional halt; conReceipt of data: parr y c ec sole light. Internal reject: Dispatch of none. data: parity bits are included, but not checked. ©1964 Auerbach Corporation and Info, Inc. 11/64 254:061.100 CDC 3100 Console CONSOLE .1 GENERAL .11 Identity: 3101 Desk Console. Integrated Console. . 12 Associated Unit: Input-Output Typewriter . . 13 Description Two consoles, functionally identical to each other, are available for the Control Data 3100 system the optional 3101 Desk Console and the standard Integrated Console. Both consoles have indicators for displaying various register contents and conditions within the system. Binary displays are provided, but not octal or decimal displays. Seven groups of display lights are used to display the operational registers of the computer. A movable input keyboard is incorporated in both console designs. This keyboard can either be operated at the console or removed and carried to a suitable nearby location. An input-output typewriter is included with the 3101 Desk Console, or it can be separately obtained as the Model 3192 Online Monitor Typewriter. These units (the keyboard and the input-output typewriters) do not use the regular data channels during operation, but have their own buffer registers and direct access to the computational module. The 3101 Desk Console provides ample desk space and a good view. The Integrated Console provides a standup operator control panel for space-limited or multiple-processor installations. The "external" status indicators display the existing condition of the input-output channels, while six columns of "internal" condition indicators provide the following information: 11/64 • Storage Active - for addressing purposes, the four possible 8, 192-word sections of storage are designated by digits 0-3. Whenever one of these storage sections becomes active, the corresponding indicator light is lit. • Conditions - a Standby light indicates that the main power switch is on, but that individual supplies are still off; an Interrupt Disabled light is on whenever the interrupt system is disabled by the program. • Cycle - four cycles are represented: Read' Next Instruction, Read Address, Read Operand, and Store Operand. These indicators are lit whenever the cycles are in progress. • Faults - these lights represent four arithmetic faults: Arithmetic Overflow, Divide, Exponent Overflow, and Decimal (BCD). • Temperature Warning and Temperature High up to four cabinet sections are represented. The console switches are divided into two groups those used for normal operations of the system and those used primarily for maintenance purposes. Operational switches are included on the main console and on an entry keyboard. The keyboard replaces the Set and Clear pushbuttons that are found on most Control Data computers for the manual entry of information. The main console switches provide for such operating controls as breakpoint/run mode selection, automatic load/dump initiation for a designated device, selective jump instruction keys, manual interrupt, and master clear buttons. The keyboard switches provide for start and stop controls, register display control, and the manual entry of information into core storage or a designated register. 254:071.100 CDC 3100 Input-Output INPUT-OUTPUT AND RANDOM ACCESS PERIPHERAL UNITS I \" All' of the Control Data 3000 Series computers, including the CDC 3100 system, use the same input-output units, the same random access storage units, and the same controllers. The program-compatible Control Data 3100, 3200, and 3300 computers also use the same supporting routines, although naturally both the timing of the routines and the loads placed on the core storage modules by the input-output operations will vary between the different computer systems. In order to place proper emphasis upon the family similarities and differences, our coverage of the Control Data 3000 Series peripheral units as used in the CDC 3100 system is organized as follows: The Control Data 3200 Computer System Report includes: The DESCRIPTION of each unit and controller (see pages 245:042.100 through 245:102.100) . • • The PRICE of each unit and controller (see page 245:221. 101) . The details of the SUPPORT PROGRAMS (if any) for each unit. This Computer System Report includes: The LOADING that each peripheral unit imposes on the 3100 core storage modules (see the Simultaneous Operations section, page 254:111. 101). o The TIMING details for code and radix conversions used in connection with peripheral operations (see the Central Processor section, page 254:051. 220). © 1 964 Auerbach Carparatian and Infa, Inc. 11/64 254: 111.1 00 CDC 3100 Simultaneous Operations SIMULTANEOUS OPERATIONS 1. GENERAL channel. The starting address is incremented and the entire transfer sequence repeated until the operation is complete, as evidenced by the starting address becoming equal to the ending address. An automatic interrupt can be specified to notify the program immediately upon completion of the transfer. The Control Data 3100 system allows for the connection of up to eight input-output data channels. Each data channel is serviced by a bi-directional, 12-bit parallel interface unit called the 3106 Standard Communication Channel t. Up to eight different peripheral equipment controllers can be connected to one 3106. These facilities make it possible for up to eight input-output operations on any of 64 different controllers to proceed simultaneously with computation. Each four-character word transferred uses one core memory cycle (1. 75 microseconds) during its accession or storage, and a further three Register File cycles (also 1. 75 microseconds per cycle, as the Register File is contained in core storage) are used to control the transfer operation. The central processor is allocated at least one memory cycle after each input-output word is handled, so that no more than one word can be transferred during each five core mem ory cycles. A choice df single- and dual-channel controllers is available for the card and printer equipment. Full line buffers are included with each of the printer controllers, but card buffers are optional depending upon the choice of card reader or card punch controller. The magnetic tape units, paper tape units, and typewriter simply have 12-bit interfaces. During the input-output operations, the central processor is unable to gain access to the core storage module involved, or to the Register File, so computation is delayed. The probable delaying effect which input-output operations will have on processing can be calculated using the core storage utilization figures which are listed for all the standard peripheral units in Table I. Where two or more core storage modules are incorporated into a single computer system, it may be possible to reduce such processor delays by overlapping storage references. Magnetic tape controllers can be selected from among 8 different units that provide from 1 to 4 channel accesses, and which are capable of controlling from 1 to 16 tape transports. Thus, if enough data channels are available, from one to four tapes on each controller can be operational in any combination, in addition to non-magnetic-tape peripherals and the processor. The so-called "block" operations (Search and Move) can also occur in parallel with the main computational process, once they have been initiated. .2 / The input-output operations are of two types: character-block transfers and word-block transfers. Character operations permit either 6 or 12 bits to be transferred in parallel between core storage and the peripheral channel, while word operations allow 24-bit transfers. Each inputoutput transfer is initiated after a series of instructures which connect the desired channel, test for "busy" or other status conditions in the inputoutput equipment, and select the desired function. The input-output transfer instruction (a two-word instruction) is then issued to start the transfer. After the starting and ending addresses for the transfer are stored in reserved locations of the processor's fast register file, the main program is released from further control of the input-output operation. For each transfer, the Communication Channel issues a data transfer request to both the input-output equipment and the priority controls of the register file. The character or word address is then delivered from the register file to the core storage address control, and the data transfer is made between storage and the data I \ t A 24-bit interface unit (the 3107 Special Communication Channel) can be used in place of two 3206 units. RULES The following processes can take place simultaneously: o One computation; plus o One "block" operation (Search or Move); plus o A Console key-in operation; plus o As many buffered input-output operations* as there are buffers (up to about 50); plus o As many non-buffered input-output operations** as there are data channels (a maximum of 8 channels); plus * The present printers are always buffered; card equipment is optionally buffered. ** Paper tape, magnetic tape, and random access drum and disk operations are non-buffered; the number of such operations may also be restricted by the manner in which the controllers are connected to the data channels. ©1964 Auerbach Corporation ond Info, Inc. 11/64 254: 111. 101 .2 The number of concurrent input-output operations may also be limited by the maximum throughput capacity of the computer system, which is 456,000 characters per second. RULES (eontd.) • *** CDC 3100 As many "non-supervised" peripheral operations*** as there are appropriate units. Magnetic tape rewinding, backspace operations, and searching for file marks, disk arm positioning and address search operations are typical "nonsupervised" peripheral operations. TABLE I: SIMULTANEOUS OPERATIONS Data Transmission Start Time OPERATION Cycle Time, Time, msee. Core Use Channel Use Time, msee. Coreh Use Channel Use Time. msee. Core Use Channel Use 828, 838 Disk Files --- 250 av 0.0 1 msee Var 7.8 or 12.5% Yes 0.0 --- --- 1311 Disk Storage Drive --- 170 or 270 av 0.0 1 msee Var 9.0% Yes 0.0 --- --- 2311 Disk Storage Drive --- 97.5 av 0.0 1 msce Var 23% Yes 0.0 --- --- 3235 Drum Storage 34.4 17.2 av 0.0 1 msee 27% Yes 0.0 --- --- 861 Drum Storage 34.4 17.2 av 0.0 ? Var Var (350/1)% Yes 0.0 --- 862 Drum Storage 17.2 8.6 av 0.0 ? Var (350/1)% Yes 0.0 50.0 1B.0 0.0 Yes 32.0 17% Yes 0.0 ----- ----- --- 50.0 42.0 0.0 Yes B.O 70% Yes 0.0 --- --- 415 Card Punch 250 cpm, unbuffered 415 Card Punch 240.0 4B.0 0.0 Yes 190.0 6.2% Yes 2.0 0.0 No 250 cpm, bJJffered 240.0 4B.0 4.4% 2.2 maee 190.0 0.0% No 2.0 0.0 No 405 Card Reader 1,200 cpm, unbuffered 405 Card Reader 1,200 cpm, buffered 523 Card Punch 100 cpm, unbuffered 523 Card Punch 100 cpm. buffered 544 Card Punch 250 cpm, unbuffered 544 Card Punch 250 cpm, buffered 3691 Paper Tape Reader 350 cps 3691 Paper Tape Punch 110 cps 3694 Paper Tape Reader 1,000 cps 3694 Paper Tape Punch 110 cps 600.0 B4.0 0.0 514.0 2.3% Yes 2.0 0.0 No 600.0 84.0 2.B% 2.2 msee 514.0 0.0% No 2.0 0.0 No 240.0 4B.0 0.0 190.0 6.1% Yes 2.0 0.0 No 240.0 4B.0 4.4% 2.2 msec 190.0 0.0% No 2.0 0.0 No Yes Yes 2.9 ? 0.0 Yef? 2.9 <0.2% Yes 2.0 0.0 No 9.0 ? 0.0 Yes 9.0 <0.1% Yes 3.0 0.0 No 1.0 ? 0.0 Yes 1.0 <0.6% Yes O.B 0.0 No 3.0 0.0 Yes 9.0 <0.1% Yes 0.0 No 3152 Line Printer 1501pm 400 + 9.7LS 0 --- --- 375 <0.1% 0.1 msec 25 + 9.7LS 0.0 No 1403 Model 2 Printer 600 Ipm 100 + 5LS 0 --- --- BO <0.3% 0.1 msec 20 +5LS 0.0 No 9.0 ? 1403 Model 3 Printer 1,1001pm 55 + 5LS 0 --- --- 35 <1. 0% 0.1 msec 20 +5LS 0.0 No 501 Printer 1,000 Ipm 60 + 6.7LS 0 --- --- 45 <1.0% 0.1 msec 13 + 6.7LS 0.0 No 505 Printer 5001pm 120 + 6.7LS 0 --- --- 105 <0.5% 0.1 msec 13 + 6.7LS 0.0 No 601 Magnetic Tape Unit 20.B KC --- 3.0 0.0 Yes Var 3.4% Yes 3.0 0.0 No 603 Magnetic Tape Unit 41.7 KC --- 2.75 0.0 Yes Var 7.3% Yes 2.25 0.0 No 604 Magnetic Tape Unit 60.0 KC --- 2.75 0.0 Yes Var 10.5% Yes 2.25 0.0 No 606 Magnetic Tape Unit B3.4 KC --- 2.75 0.0 Yes Var 14.5% Yes 1. 75 0.0 No 607 Magnetic Tape Unit 120 KC --- 2.75 0.0 Yes Var 21. 0% Yes 1. 75 0.0 No 692 Magnetic Tape Unit 30 KC --- ? 0.0 Yes Var 7.0% Yes ? 0.0 No ----- ? 0.0 Yes Var 14.0% Yes ? 0.0 No ? 0.0 Yes Var 21.0% Yes ? 0.0 No Var <0.01% Yes 0 --- --- No <0.05% No 100 0.0 No 694 Magnetic Tape Unit 696 Magnetic Tape Unit 3692 Program Controlled Input-Output Typewriter 67 0 --- --- 3293 Iner.emental Plotter 3.3 or 5.0 100 0.0 av b I LS Var 11/64 msee. Stop Time No Average time - see main report section on this device for details. For the word mode. If character mode is used, the core usage should be quadrupled. Interlace factor (can be I, 2, 4, 8, 16, or 32). Number of lines sld.pped between successive printed lines. Data transmission time varies with record length. 254: 151.1 00 CDC 3100 Software SOFTWARE The program-compatible Control Data 3100, 3200, and 3300 computer systems all utilize the same software. For a complete description, refer to the CDC 3200 Computer System Report, pages 245:151. 100 through 245:191. 600. The Instruction List and Data Code Table for the Control Data 3100, 3200, and 3300 systems will also be found in the CDC 3200 report, on pages 245:121. 100 and 245:141. 100, respectively. (The 3100 uses subroutines to simulate the floating-point and decimal arithmetic instructions. ) I / I .", © 1964 Auerbach Corporation and Info, Inc. 11/64 254:201.001 CDC 3100 System Performance SYSTEM PERFORMANCE GENERALIZED FILE PROCESSING (254:201. 1) These problems involve updating a mast~r file from information in a detail file and producing a printed record of the results of each transaction. This application is one of the most typical of commercial data processing jobs and is fully described in Section 4:200.1 of the Users' Guide. In the graphs for Standard File Problems A, B, C, and D, the total time required for each standard configuration to process 10,000 master file records is shown by solid lines. For Configuration VIlB, where all four input-output files are on magnetic tape, total times for cases using both unblocked and blocked records in the detail and report files are shown by means of solid and dashed lines, respectively. Central processor time becomes the controlling factor in Configuration VIlB when moderate activity ratios are reached. Worksheet Data Table 1 (page 254:201. 011) shows that the printer is the controlling factor on total time required over most of the detail activity range for the integrated Configuration VI. In these configurations the detail file is read by the on-line card reader and the report file is produced by the on-line printer. The central processor is occupied for only a small fraction of the total processing time. The master file record format is a mixture of alphameric BCD and pure binary numeric items, designed to minimize the number of time-consuming radix conversion operations required. (Even so, most of the central processor time is devoted to editing and radix conversion operations, using programmed, nonstandard subroutines.) An optimized degree of packing led to a record length of 20 words (the equivalent of SO 6-bit characters). SORTING (254:201. 2) The standard estimate for sorting SO-character records by straightforward merging on magnetic tape was developed from the time for Standard File Problem according to the method explained in the Users' Guide, Paragraph 4:200.213, using a three-way merge. MATRIX INVERSION (254:201. 3) In matrix inversion, the object is to measure central processor speed on the straightforward inversion of a non-symmetric, non-singular matrix. No input-output operations are involved. The standard estimate is based on the time to perform cumulative multiplications (c = c + aib j ) in 36-bit precision floating point (see Paragraph 254:051.422). GENERALIZED MATHEMATICAL PROCESSING This problem is normally executed in floating point, which is available in the Control Data 3100 only through the use of time-consuming subroutines. The cost of such subroutines can be seen in the Matrix Inversion graph, so the Generalized Mathematical Processing Problem has not been programmed for the Control Data 3100 system. GENERALIZED STATISTICAL PROCESSING (254:201. 5) The Generalized Statistical Processing program uses extensive fixed-point computation, which is probably the strongest feature of the Control Data 3100 system. The problem measures overall system performance on a common statistical application: the development of crosstabulation tables, as in the analysis of the results of a survey. The problem is defined in Section 4:200; 5 of the Users' Guide, and the performance of the Control Data 3100 is shown in Graph 254:201. 500. © 1 964 Auerbach Corporation and Info, Inc. 11/64 CDC 3100 254:201.011 WORKSHEET DATA TARLE 1 Configuration Reference Item 1 Char/block K Records/block 960 960 960 12 12 12 ~160 File 4 ~1=File2 msce/switch Output --_.-1-------- 1------- f--~- _ _1_.~_ I- ___!'-~S_ 1- _ _0_.1_2___ - 1--~2_ ~--- I-~~File2 o ,. Fil, Central Processor Times f-~8 _ _ _ ~--- I-----0~_ 2.05 ~-- I--~--- msce/record msee/detail ~_+b9 _ _ _ mseel report Problem A b7 + b8 ~- and a3 K column. .- File 1 Master In ~D~ ~Reports Total _O~_ _2~_ 2.70 2.70 C.P. C.P. I/O I/O 1.6 s.r-- 1 - - - - js:r-1 - - 6~ 1 - - ~- 1---- 62~1 - 1.45 1.45 5.r-1 - - 26 1.45 -----I - - - - 1.45 1.45 1.45 1---- f----t.4~1 - - 1.44 4:200.1132 _O~_ 1.6 2.16 ~- I--z:lG - 76.20 1,920 76.20 Std. routines 600 1----_.- - - - - _ . Fixed 1-----_.3 (Blocks 1 to 23) f---s(ru;;cks 24 to 4·S Space I--~--- I---~""-:""" ~ 26 1-- 1--- ~4- -2-:-W--170 4:200.114 76.20 .~ 64 (24-bit word) Unit of measure Standard File Problem A 2,000 600 600 ----_.-- -2,000 2,000 -----.- -------- _._--600 600 600 ~,ooo-- -1;000--- ~o~- 4:200.1151 f - - = , - - - - - I----:- . - - - - - _._----- - - - - 2,000 Files _ _. 2,000 2,000 1---. 1-------- ' - - - _ . - -------- 600 600 600 6, SOO 6,800 6, SOO Working Total * I/O 1.6 al ~MasterOu 4 I-----0~_ 2.70 C.P. msce/block for C.P. dominant F=1.0 o. ,. o. ,. 1_.6_ ~--- ~~- 1- _ _ 0 _ _. _ msce/block msce/work 3 Standard File 4:200.112 38' File 4 msectPena! ty 2 1- _ _26_*_ _ _ _ 12.0 - - - f-------- 1-------- ~3_ _ _ Times _ _ _2_6_ _ _ _ 1- _ _26_ _. _ _5_0_ _ _ f-- _ _l~ _ ~3_ _ _ Standard File Problem A Input- (File 1) (File 1) ~1=File2 msee/block VII B (Blocked Files 3 & 4) VII B (Unblocked Files 3 & 4) VI 12 records per block. WORKSHEET DATA TABLE 2 Configuration Item 7 Unit name Size of block Standard Statistical ProblemA VIIB ·603 Tape 604 Tape 960 char B 15 15 msec/block Tl 34.0 26.0 msee penalty T3 ~Ck T5 msec/table T7 mscc/ree~ 0.35 0.35 0.01 - - - - - - - - ~._0_1____________ 0.01 0.01 --- 1------_.0.055 Reference 960 char Records/block C.P. 11/64 VI 0.055 4:200.512 SYSTEM PERFORMANCE 254:201.100 .1 GENERALIZED FILE PROCESSING .11 Standard File Problem A .111 Record sizes Master file: . . . . . . . 108 characters (packed into 20 CDC 3100 words). Detail file: . . . . • • . 1 card. Report file: • . . . . . . 1 line. .112 Computation: . . . . . . . standard. .113 Timing basis: . . . . . . using estimating procedure outlined in Users' Guide, 4:200.113 . 114 Graph: . . . . . . . . . . . see graph below . . 115 Storage space required Configuration VI: ... 6,800 words. Configuration VII B (Unblocked Files 3 & 4): . . . . . . . . 6,800 words. Configuration VII B (Blocked Files 3 & 4): . . . . . . . 6,800 words. 100.0 7 4 --~ 2 10.0 Time in Minutes to Process 10, 000 Master File Records 7 -' ./ / 4 / I 2 7 1.0 7 , r 4 /" ~ ~ .-.- --- _.. ~ v~_ l- -- - 2 0.1 0.0 0.1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record NOTE: Dashed line denotes blocked Files 3 and 4; Roman numerals denote standard system configurations shown in Section 254:031. ©1964 Auerbach Corporation and Inf.o.lnc. 11/64 254:201.120 . 12 CDC 3100 Standard File Problem B .122 Computation: . . . . . . . standard . . 123 Timing Basis: . . . . . . using estimating procedure outlined in Users' Guide, 4:200.12. .124 Graph: . . • . . . . . . . . see graph below. . 121 Record sizes Master file: . . . . . . . 54 characters. Detail file: . . . . . . • 1 card. Report file: . . . . . . 1 line. 100.0 7 4 2 ~ 10.0 Time in Minutes to Process 10, 000 Master File Records ./ 7 ./ 4 V 2 / / ,, 7 ../ I ~ .- ./ I II 2 " / 1.0 4 - ./ ./ V~ .... ~ .. -...,..- ~ ... ...,.. "<.J}}1l- -~ .. - 0.1 0.0 0.1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record NOTE: Dashed line denotes blocked Files 3 and 4; Roman numerals denote standard system configurations shown in Section 254:031. / 11/64 SYSTEM PERFORMANCE . 13 ""- 254:201.130 Standard File Problem C . 132 Computation: .. . 133 Timing Basis: . . 131 Record sizes Master file: . . . . . . . 216 characters. Detail file: . . . . . . . 1 card. Report file: . . . . . . . 1 line. ... standard . . using estimating procedure outlined in Users' Guide, 4:200.13. .134 Graph: . . . . . . . . . . . see graph below. 100.0 7 4 2 ~ 10.0 -"'" 7 Time in Minutes to Process 10,000 Master File Records - ./ '7' 4 2 1.0 7 / / I - VIIB ! -------- ~ ---VllB _--- 4 2 0.1 0.0 0.1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record NOTE: Dashed line denotes blocked Files 3 and 4: Roman numberals denote standard system configurations shown in Section 254:031. © 1964 Auerbach Corporation and Info, Inc. 11/64 254:201. 140 . 14 CDC 3100 Standard File Problem D .142 Computation: . . . . . . . trebled . .143 Timing Basis: . . . . • . using estimating procedure outlined in Users' Guide . 4:200.14. . 144 Graph: . . . • . . . . . . . see graph below. • 141 Record sizes Master file: . . . . . . . 108 characters. Detail file: . . . • . . . 1 card. Report file: . . . . . . . 1 line. 100.0 7 4 2 ~ 10.0 Time in Minutes to Process 10,000 Master File Records 7 ./ /' - " / 4 / ) 2 I 1.0 7 • II• 4 II/~ .- --- ~ ...... =- - ::;:;ll~ 2 O. 1 0.0 0.1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record NOTE: Dashed line denotes blocked Files 3 and 4; Roman numerals denote standard system configurations shown in Section 254:031. / 11/64 SYSTEM PERFORMANCE 254:201.200 .2 SORTING .21 Standard Problem Estimates .212 Key size: . . . . . . . . . 8 characters . . 213 Timing basis: . . . . . . using estimating procedure outlined in Users' Guide, 4:200.213 . .214 Graph: . . . . . . . . . . . see graph below. • 211 Record size: . . . . . . . 80 characters. 1,000 I " 7 4 2 , 100 7 4 Time in Minutes to put Records into Required Order V V ~I / 2 10 V ,, 7 , VV / / V "" / 4 ,J'I /V 2 ~y 1.0 / ,, 7 / ~/ 2 1/ 0.1 2 100 V 4 / I'" -I If " / 4 ~'$) / V If' / ~/ 2 7 4 7 1,000 2 10,000 4 7 100,000 Number of Records NOTE: Roman numerals denote standard system configurations shown in Section 254:031. ©1964 Auerbach Corporation and Info, Inc. 11/64 254:201.300 CDC 3100 .3 MATRIX INVERSION .31 Standard Problem Estimates .312 Timing basis: . . . . . . using estimating procedure outlined in Users' Guide, 4:200.312; floating-point arithmetic performed by subroutines . . 313 Graph: . . . • . . . . . . . see graph below. . 311 Basic parameters: ..• general, non-symmetric matrices, using floating point to at least 8 decimal digits. 10.0 7 4 ~ 2 I 1.0 7 J I 4 Time in Minutes for Complete Inversion II I 2 II 0.1 7 I L 4 / 2 / I V 0.01 7 'I 4 II :I 2 I I 0.001 2 1 4 7 2 4 10 2 100 Size of Matrix 11/64 7 4 7 1,000 SYSTEM PERFORMANCE 254:201.500 .5 GENERALIZED STATISTICAL PROCESSING .51 Standard Statistical Problem A Estimates .512 Computation: . . . . . . . augment T elements in cross- tabulation tables . . 513 Timing basis: . . . . . . using estimating procedures outlined in Users' Guide, 4:200.513 . . 514 Graph: . . . . . . . . . . . see below. .511 Record size: . • . . . . . thirty 2-digit integral numbers. 100.0 7 4 ~ /' 2 ~'9 V ~,,'7 10.0 , 7 Time in Milliseconds per Record L 4 ILl' II' VI / 2 VUB / 1.0 7 4 2 0.1 2 1 4 2 7 4 2 7 10 100 4 7 1,000 T, Number of Augmented Elements Roman numerals denote standard configurations. @1964 Auerbach Corporation and Info, Inc. 11/64 254:221.101 CDC 3100 Price Data PRICE DATA PRICES IDENTITY OF UNIT CLASS No. Name Monthly Rental Monthly Maintenance Purchase $ $ $ 2,700 173.00 95,000 CENTRAL PROCESSOR 3104 COMPUTER: 6, 24, and 48-bit modes, three index registers, indirect addressing. Includes con sole, communication channel, 4,096 words of storage, and control for referencing up to 32,768 words of storage and up to four 3106 communication channels. DATA CHANNELS 3106 COMMUNICATION CHANNEL: bi-directional, buffered, 12-bit data exchange. Permits attachment of one to eight 3100, 3200, 3400, or 36,00 peripheral controllers to a 3100 system. 120 35.00 5,000 3107 COMMUNICATIONS CHANNEL: bi-directional, buffered, 24-bit data exchange. Includes 12 to 24- bit assembly/disassembly, permits attachment of one to eight peripheral controllers to a 3100 system. 200 50.00 8,500 3108 STORAGE MODULE: 4,096 words or 16,384 characters of magnetic core storage. 700 102.00 30,000 3109 STORAGE MODULE: 8,192 wcrds or 32, 768 characters of magnetic core storage. 8io 127.00 42,000 3103 STORAGE MODULE: 16,384 words or 65,536 characters of magnetic core storage. Each word or character is parity checked. One read/write control, accessible from two processors or special devices. 1,800 148.00 80,000 3192 ON-LINE MONITOR TYPEWRITER: direct connection into 3104 computer. 240 85.00 9,000 INTERNAL STORAGE / INPUTOUTPUT NOTE: All Control Data 3000 Series computers use the same peripheral units. These peripheral units are described in the CDC 3200 Computer System Report, and their prices are listed in the Price Data section beginning on page 245:221. 101. ©1964 Auerbach Corporation and Info, Inc. 11/64 / ~. CDC 3300 Control Data Corporation / ( \ "-. AUERBACH INFO, INC. PRINTED IN U. S. A. CDC 3300 Control Data Corporation AUERBACH INFO, INC. PRINTED IN U. S. A. 255:001.001 CDC 3300 Contents CONTENTS 1. 2. 3. 4. 5. 6. 7. 11. 12. 14. 15. 20. 21. 22. Introduction . . . . . . . . . . . . . . . . ...... . Data Structure . . . . . . . . . . . . . . .... . System Configuration . . . . . . . . . . .... . VIlA 10-Tape General System (Integrated) . . . . . . . . . . . . VIlB 10-Tape General System (Paired) . . . . . . . . Internal Storage Core Storage . . . . . . . . . . . . . . . . . . . . . . Central Processor. . . . . . . . . . .............. . Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Peripheral Equipment . . . . . . . . . . . . . . . . . . . . . . . . . . . Simultaneous Operations . . . . . . . . . . . . . . . . . . . . . . . . . Instruction List . . . . . . . . .................. . Data Code Table. . . . . . . . .................. . Software. . . . . . . . . . . . . .................. . System Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . Worksheet Data Table . . . . . . . . . . . . . . . . . . . . Generalized File Processing . . . . . . . . . . . . . . . Sorting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Matrix Inversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . Generalized Mathematical Processing . . . . . . . . . . . . . . Generalized Statistical Processing . . . . . . . . . . . • . . . . Physical Characteristics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Price Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . • . . . . . . . . . 255:011 255:021 255:031 255:031.4 255:031.5 255:041 255:051 255:061 255:071 255:111 245:121* 245:141* 255:151 255:201 255:201. 011 255:201.1 255:201. 2 255:201. 3 255:201. 4 255:201. 5 245:211* 245:221* * Refer to indicated section of the CDC 3200 Computer System Report. ,/ \ / I @1964 Auerbach Corporation and Info, Inc. 11/64 ./ 255:011.100 CDC 3300 Introduction INTRODUCTION The Control Data 3300 computer system was announced in the summer of 1964 as a faster version of the CDC 3200 system. First deliveries of the new system probably will not be made before the Spring of 1966; the 3300 was announced primarily to assure users of the CDC 3100 and 3200 computer systems that they will be able to move up to a larger, faster computer without reprogramming and conversion problems. At present, this assurance is probably the most important single characteristic of the CDC 3300, although as delivery approaches, interest may well focus upon the matured software systems which users will be able to transfer from the CDC 3200 to the 3300 system. These software systems will include FORTRAN and COBOL compilers, a report generator, an operating system (SCOPE), a linear programming package, and a PERT program. The CDC 3300 is a scientific computer system with large-scale performance capabilities (as judged against 1964 equipment). The cycle time of its core storage modules is 800 nanoseconds, and that of its Register File (used for various control purposes) is 300 nanoseconds. Its instruction times are correspondingly fast. Fixed-point, 24-bit addition takes 1. 6 microseconds; floating-point, 36-bit preCision addition takes 7 microseconds; and decimal addition takes 7.6 microseconds for 12-digit operands. The binary multiplication times are 6 microseconds and 11 microseconds for fixed-point and floating-point operations, respectively. There are no hardware facilities for decimal multiplication or division. The off-line search facilities and the interrupt system used in the Control Data 3200 computer system are included in the 3300 system, without alteration. The input-output throughput capacity has been increased by 60% over the CDC 3200's capacity, to a maximum of 4,333,333 characters per second. The number of data channels that can be connected remains at eight, so the number of concurrent operations that can be simUltaneously supervised by the central processor (also eight) is unchanged. The maximum amount of addressable core storage has been increased fourfold from its capacity of 32,768 24-bit words in the CDC 3200 system, to 131,072 words. It is not yet known whether the whole of this storage will be character-addressable, as well as word-addressable. A multiprogramming facility will be included in the Control Data 3300 repertoire. Presently-announced features (dynamic storage protection and automatic program relocation), while useful in themselves, will not help to l'cduce the time involved in switching from one program to another. Where this switching is at all frequent, a considerable executive program overhead may be incurred in interchanging and protecting the contents of the index registers and parts of the Register File. The CDC 3300, like the CDC 3200 system, is designed to enable multi-computer installations to be simply organized. All 16, 384-word core storage modules are independent and permit access by either of two processors. Most of the peripheral units can be supplied with dual-channel controllers and switched from one processor to another under program control. The peripheral units available with the Control Data 3300 ~ystem are exactly the same as those available for the Control Data 3100 and 3200 systems. They are described in detail in Computer System Report No. 245, on the Control Data 3200. Particularly interesting peripheral units include IBM System/360-compatible magnetic tape units, and the Model 861 and 862 Drum Storage units which can transfer data at up to 2,000,000 characters per second. The software for the Control Data 3300 will be taken directly from the Control Data 3200 system, except for some changes to the SCOPE Operating System to adapt it for multiprogrammed operation. No alterations in any compilers, assemblers, or utility programs are expected to be necessary. © 1964 Auerbach Corporation and Info, Inc, 11/64 255:021.100 CDC 3300 Doto Structure DATA STRUCTURE ·1 .2 STORAGE LOCATIONS Name of Location Size Purpose or Use Word: 24 bits Character: Block: 6 bits 1 to N characters or 1 to N words basic addressable unit (data or instruction). addressable data unit. Search, Move, and Inputoutput instructions . INFORMATION FORMAT Type of Information Representation Operand: . . . . . . . 24- or 48-bit fixed point word. 48-bit floating point word. 6-bit character. 4-bit BCD character. lor 2 words. 1 to 13 BCD characters. Instruction: Field: . . . © 1964 Auerbach Corporation and Info, Inc. 11/64 255:031.001 CDC 3300 System Configuration SYSTEM CONFIGURATION GENERAL Every Control Data 3300 computer system includes the following units: • A 3300 General Processor. • A O. 8-microsecond Core Storage Unit ranging from 8,192 to 32,768 words (32,768 to 131,072 characters) in capacity. • A desk console with detachable keyboard and an adjacent I/O typewriter station. Q A Power Converter and Control Unit. Two 3306 Data Channels are included in the basic system. Up to six more can be added, so that a fully-extended Control Data 3300 computer system will have eight data channels. Eight peripheral units or controllers can be connected to each data channel. The data channels used in all of the Control Data 3000 Series computers present a common interface with peripheral units. As a result of this, any of the 3000 Series peripheral units can be connected through a 3306 Data Channel to a Control Data 3300 computer. The available peripheral units are described in the Control Data 3200 Computer System Report. Details of the loadings these units place on a Control Data 3300 computer system are described in the Simultaneous Operations section of this report, starting on page 255:111.100. Some peripheral units or controllers can be connected to more than one data channel. This facility may be used either to allow two concurrent data transmissions to take place, or to allow the peripheral unit to be switched between two computer systems. A bank of magnetic tape units connected to a dual-channel controller is a case where multiple data transmissions would be the normal reason for having the two data channels; while a printer connected to two different computer systems by way of a dual-channel controller could be used by either system, as the situation in the computer room demands. The core storage modules can similarly be connected to, and accessed by, two computers. Each 8, 192-word module is independent and permits dual access by a second processor or special device. SELECTION OF REPRESENTATIVE CONFIGURATIONS The Control Data 3300 computer system is shown in the following Standard System Configurations, as defined in the Users' GUide, page 4:030.100: • • 11/64 Configuration VIlA; 10-Tape General Integrated Configuration . Configuration VIIB; 10-Tape General Paired Configuration, using a Control Data 160 Computer System as the satellite system. SYSTEM CONFIGURATION .1 255:031.1 00 10-TAPE GENERAL SYSTEM (INTEGRATED); CONFIGURATION VIIA Deviations from Standard Configuration: . core storage is 33% larger. 3 less index registers provided. card reader is 140% faster. card punch is 150% faster. Equipment 32,768 words of Core Storage INA 3300 General Processor Console with Monitor Typewriter INA 3306 Data Channels (4) INA 405 Card Reader (1,200 cpm) 3248 Control $ 400 100 415 Card Punch (250 cpm) 3446 Controller 295 450 505 Line Printer (500 lpm) 3256 Controller 635 515 604 60KC Magnetic Tapes (6) 3229 Controller 3,600 600 604 60KC Magnetic Tapes (4) 3228 Controller 2,400 425 TOTAL RENTAL: $ INA INA: Prices not announced to date. ©1964 Auerbach Carporation and Info, Inc. 11/64 255:031.200 .2 CDC 3300 10-TAPE GENERAL SYSTEM (PAIRED); CONFIGURATION VIIB* Deviations from Standard Configuration: . 3 less index registers. direct connection to satellite system. card reader is 1100% faster. Eguipment 16,384 words of Core Storage INA 3300 General Processor Console with Monitor Typewriter INA 3206 Data Channels (2) 405 Card Reader (1,200 cpm) 3248 Controller To Satellite 160 System (at right) INA: Prices not announced to date. 11/64 $ 400 100 604 60KC Magnetic Tape Units (4) 3228 Controller 2,400 425 604 60KC Magnetic Tape Units (4) 3228 Controller 2,400 425 TOTAL ON-UNE EQUIPMENT: $ INA TOTAL SATE LUTE EQUIPMENT: $5,165 TOTAL RENTAL: $ INA SYSTEM CONFIGURATION 255:031.201 SATELliTE EQUIPMENT (CDC 160) Deviations from Standard Configuration: . direct connection to main system. core storage is 100% larger. multiply/divide is included. paper tape equipment is included. card reader is 140% faster. card punch is 150% faster. magnetic tapes are 30% slower. Eguipment 4,096 12-bit words of Core Storage 160 Processor $1,500 Console with Monitor Typewriter Paper Tape Reader (350 cps) Paper Tape Punch (110 cps) 3681 Data Channel Converter 3682 Satellite Coupler 275 175 405 Card Reader (1,200 cpm) 3248 Controller 400 100 415 Card Punch (250 cpm) 3446 Controller 295 450 505 Line Printer (500 lpm) 3256 Controller 635 515 601 21KC Magnetic Tapes (2) 3127 Controller 500 320 TOTAL SATELLITE EQUIPMENT: i $5,165 To 3300 System (at left) , ..- ©1964 Auerbach Corporation and Info, Inc. 11/64 255:041.100 CDC 3300 Internal Storage Core Storage INTERNAL STORAGE: CORE STORAGE .1 GENERAL . 11 Identity: . .12 Basic Use: . . . . . . . . working storage. random access storage. intercommunication with other computer systems. . 13 Description A Control Data 3300 computer system must contain 8,192 24-bit word locations of core storage, and can optionally be connected to a 3309 Storage Module, which is a second, independent 8, 192word module, for a total of 16,384 words. Additionally, the 3300 computer system can be connected to up to seven 3303 Storage Modules, each of 16,384 words, for a total potential capacity of 131,072 words, or 524,288 characters, of core storage. 11/64 The 3309 and 3303 Storage Modules differ in their function as well as in their size. The 3309 is connected directly to a single 3300 computer system, while each of the 3303 Storage Modules can be connected to two different computer systems. Control Data expects the 3303 Modules to be used for random access storage and for inter-computer communication, rather than as regular working storage. 3300 General Processor, containing 8K words. 3309 Storage Module (8K). 3303 Storage Module (16K). All the core storage units have cycle times of 0.8 microseconds and access times of 0.4 microseconds. Each module is independent, and significant speed increases can be achieved by placing the instructions in one bank and the operands in another, or by separating the input-output areas from the computational areas in a program. . 14 Availability: .. ? .15 First Delivery: Spring, 1966. 255:051.100 CDC 3300 Central Processor CENTRAL PROCESSOR .1 GENERAL • 11 Identity: . . . . . . . . . . 3300 General Processor . . 12 Description and its facilities, reference should be made to the description of the CDC 3215 General Processor on page 245:051. 100 . .13 Preliminary details indicate that the CDC 3300 .14 General Processor will be a faster version of the CDC 3215 General Processor, with a few additional .2 instructions introduced to simplify multiprogramming, and the ability to address up to 131,072 words of storage. The reader is referred to the descrip.3 tion of the 3215 General Processor on page 245:051. 100 (in the CDC 3200 Computer System Report) for details of the facilities of the 3300 Processor. The faster operation of the CDC 3300 results from its faster core storage cycle time (0.8 versus 1. 25 microseconds), a reduction in the proportion of the core storage cycle which is needed simply to access data (50% of the complete cycle, versus 60% in the CDC 3200), and a reduction in the cycle time of the 64-word Register File (300 versus 500 nanoseconds). The Register File itself will cycle independently of the core storage; this will help by reducing the load placed on the core storage by input-output operations rather than by speeding up the computational operations. The multiprogramming facilities announced to date consist of dynamic storage protection and automatic program relocation. Only one set of three index registers and one Register File are provided, so that Switching from one program to another will usually entail unloading and restoring most, if not all, of these registers. ,/ I \ " Only preliminary information about the performance of the Control Data 3300 computer system is available to date. This infor,mation has been used to derive instruction times and subroutine times, which differ from those reported for the Control Data 3200 computer system. These times are reported below and in Table I. For the rest of the details regarding the Control Data 3300 Processor First Delivery: . . . . . Spring, 1966. Availability: . . . . . . . ? PROCESSING FACILITIES See Paragraph 245:051. 2 in the CDC 3200 report. SEQUENCE CONTROL FEATURES See Paragraph 245:051. 3 in the CDC 3200 report. .4 PROCESSOR SPEEDS .41 Instruction Times in Microseconds Binary (24 bits) BCD (12 char) .411 Fixed point Add-subtract: . . . . . 1. 8 7.4 not available. Multiply: •.••..•.• 5.0 to 7.0 not available. Divide: •••••.•.•. 7.3 .412 Floating point Add-subtract: ••••. 6.4 to 7.7 Multiply: ..•••.•. 9.0 to 11. 5 Divide: •••.•••••• 13.0 .413 Additional allowance for Indexing:. • • • • • • • • O. 24 Indirect addressing: . 0.8 Re-complementing: • 0.0 .414 Control Compare: •••••.•. 1. 2 Branch: ••.•••.•. 0.8 Compare and branch: 1. 2 .415 Counter control Step: . . . . . . . . . . . 0.8 Step and test: .••.. 1. 2 Test: •••••••••.• 1. 2 .416 Edit: • • • . • • . • • • • • not available. .417 Convert:. • • . • • . . • • see Table I. .418 Shift: •••••.•••.•• 0.8 to 2.4 .42 Processor Performance in Microseconds Fixed point {24 bits} BCD (12 char) Floating point (48 bits} .421 For random addresses c = a+ b: b = a+ b: Sum Nitems: c = ab: c = alb: 4.8 4.0 1.6N 9.2 11.2 17.5 17.5 7.4N not available not available 11.9 11.9 7.0N 15.0 15.0 .422 For arrays of data ci = ~ + bj: b j = ~ + bj: Sum N items: c= c + aibj: 7.6 6.8 3.1N 13.4 22.5 23.7 8.8 14.5 14.5 8.5 ©1964 Auerbach Corporation and Info,lnc. 11/64 255:051.423 CDC 3300 For least or greatest:2. 7 + 2. 7N For interpolation point: .••••...•. 2.7 + 2. 7N .427 Bit indicators Set bit in pattern: .•• 4.8 Test bit in pattern: .• 3.6 .428 Moving, per N words:. 2.1 + 2.9N (345,000 24-bit words/ sec) • .423 Branch based on comparison Numeric data: . . . . . 10.0 Alphabetic data: . . . . 10.0 .424 SwitchingUnchecked: . • . . • . . 3.45 Checked: •••.•..• 5.8 List search: ...••. 9.4 + 2.7N . 425 Format control, per character Unpack: . • . . . . . . . 76. Compose: . • . • . . . • 76. .426 Table look-up, per N comparisons For a match: . . . . . . 2.7+ 2. 7N .5 ERRORS, CHECKS, AND ACTION See Paragraph 245:051. 5 in the CDC 3200 report. TABLE I: CONVERSION TIMES FOR STANDARD SUBROUTINES ORIGINAL OPERAND MICROSECONDS REQUffiED FOR CONVERSION TO: Magnitude Internal BCD (1) Fixed Point Binary (2) Column BCD (4) Row BCD (5) Internal BCD <10 7 - 9/digit 9/digit + 12/operand 4,000/card 20,000/card Internal BCD >10 7 - 15/digit 15/digit + 12/operand 4,000/card 20,000/card Fixed Point Binary <10 7 14/digit - 12/operand 14/digit + 4,000/card 14/digit + 20,000/card Fixed Point Binary >10 7 28/digit - 12/operand 28/digit + 4,000/card 28/digit + 20,000/card Floating Point Binary < 10 7 14/digit + 18/operand 18/operand - 14/digit + 18/operand + 4,000/card 14/digit + 18/oper and + 20,000/card Floating Point Binary >10 7 28/digit + 18/operand 18/operand - 28/digit + 18/operand + 4,000/card 28/digit + 18/operand + 20,000/card Type (1) (2) (3) (4) (5) Note: Floating Point Binary (3) Internal BCD is used in decimal arithmetic, for card reader input, and for printer output. Fixed Point Binary is used for 24 or 48-bit bjnary arithmetic. Floating Point Binary is used for all floating point operations. Column BCD is used for output via buffered card punch equipment. Row BCD is used for output via unbuffered card punch equipment. "digit" refers to decimal digits in all of the above times. / 11/64 255:061.100 CDC 3300 Console CONSOLE .1 GENERAL . 11 Identity: . . 3301 Desk Console . .12 Associated Unit: Input-Output Typewriter is included with the 3301. .13 e Storage Active - for addressing purposes, the four possible 8, 192-word sections of storage are designated by digits 0-3. Whenever one of these storage sections becomes active, the corresponding indicator light is lit. o Conditions - a Standby light indicates that the main power switch is on, but that individual supplies are still off; an Interrupt Disabled light is on whenever the interrupt system is disabled by the program. Description Details of the 3301 Desk Console have not been completely specified, but in general it will be similar to the 3201 Desk Console used with CDC 3200 computer systems, modified as necessary for the additional storage capabilities of the newer system and for its storage protection and automatic relocation features. The following description (taken from the Console section of the CDC 3200 Computer Sys~ tern Report) describes the 3201 Desk Console, and contains the best currently available information about the 3301. The Desk Console includes a movable input keyboard, which can either be operated at the console or removed and carried to a suitable nearby location. An input-output typewriter is also incorporated in the console design. Both the keyboard and the typewriter have direct access to the computational module, and do not use the regular data chalUlels. Octal or decimal displays are used to display the contents of the seven operational registers. The operator sitting at the console has a good view of these displays, and of the equipment itself. The "external" status indicators display the existing condition of the input-output channels, while six columns of "internal" condition indicators provide the following information: o Cycle - four cycles are represented: Read Next Instruction, Read Address, Read Operand, and Store Operand. These indicators are lit whenever the cycles are in progress. o Faults - these lights represent four arithmetic faults: Arithmetic Overflow, Divide, Exponent Overflow, and Decimal (BCD). o Temperature Warning and Temperature Highup to four cabinet sections are represented. The console switches are divided into two groups those used for normal operations of the system and those used primarily for maintenance purposes. Operational switches are included on the main console and on an entry keyboard. The keyboard replaces the Set and Clear pushbuttons that are found on most Control Data computers for the manual entry of information The main console switches provide for such operating controls as breakpoint/run mode selection, automatic load/dump initiation for a designated device, selective jump instruction keys, manual interrupt, and master clear buttons. The keyboard switches provide for start and stop controls, register display control, and the manual entry of information into core storage or a designated register. ©1964 Auerbach Corporation and Info, Inc. 11/64 255:071.100 CDC 3300 Input-Output INPUT-OUTPUT AND RANDOM ACCESS PERIPHERAL UNITS All of the Control Data 3000 Series computers, including the CDC 3300 system, use the same input-output units, the same random access storage units, and the same controllers. The program-compatible Control Data 3100, 3200, and 3300 computers also use the same supporting routines, although naturally both the timing of the routines and the load placed on the core storage modules by the input-output operations will vary between the different computer systems. In . order to place proper emphasis upon the family similarities and differences, our coverage of the Control Data 3000 Series peripheral units as used in the CDC 3300 system is organized as follows: The Control Data 3200 Computer System Report includes: • • • The DESCRIPTION of each unit and controller (see pages 245:042.100 through 245:102. 100). The PRICE of each unit and controller (see page 245:221. 101). The details of the SUPPORT PROGRAMS (if any) for each unit. This Computer System Report includes: • • 11/64 The LOADING that each peripheral unit imposes on the 3300 core storage modules (see the Simultaneous Operations section, page 255:111.101). The TIMING details for code and radix conversions used in connection with peripheral operations (see the Central Processor section, page 255 :051. 423). 255: 111.1 00 CDC 3300 Simultaneous Operations SIMULTANEOUS OPERATIONS 1. GENERAL After the starting and ending addresses for the transfer are stored in reserved locations of the processor's fast register file, the main program is released from further control of the input-output operation. For each transfer, the Communication Channel issues a data transfer request to both the input-output equipment and the priority controls of the register file. The character or word address is then delivered from the register file to the core storage address control, and the data transfer is made between storage and the data channel. The starting address is incremented and the entire transfer sequence repeated until the operation is complete, as evidenced by the starting address becoming equal to the ending address. An automatic interrupt can be specified to notify the program immediately upon completion of the transfer. The Control Data 3300 system allows for the connection of up to eight input-output data channels. Each data channel is serviced by a bi-directional, 12-bit parallel interface unit called the 3306 Standard Communications Channel t . Up to eight different peripheral equipment controllers can be connected to one 3306. These facilities make it possible for up to eight input-output operations on any of 64 different controllers to proceed simultaneously with computation. A choice of singla- and dual-channel controllers is available for the card and printer equipment. Full line buffers are included with each of the printer controllers, but card buffers are optiOlial depending upon the choice of card reader or card punch controller. The magnetic tape units, paper tape units, and typewriter simply have 12-bit interfaces. Each four-character word transferred uses one core memory cycle (0.8 microseconds) during its accession or storage, and a further three Register File cycles (0.3 microseconds) are used to control the transfer operation. During these operations the central processor is unable to gain access to the core storage module involved, or to the Register File, so computation is delayed. The probable delaying effect which input-output operations will have on processing can be calculated using the core storage utilization figures which are listed for all the standard peripheral units in Table 1. Where two or more core storage modules are incorporated into a single computer system, it may be possible to reduce such processor delays by overlapping storage references. Magnetic tape controllers can be selected from among 8 different units that provide from 1 to 4 channel accesses, and which are capable of controlling from 1 to 16 tape transports. Thus, if enough data channels are available, from one to four tapes on each controller can be operational in any combination, in addition to non-magnetic-tape peripherals and the processor. / I i "-- The so-called "block" operations (Search and Move) can also occur in parallel with the main computational proceSs, once they have been initiated. The Search instruction initiates a search through a block of character storage addresses looking for equality or inequality with a character contained in the instruction word. The Move order is used to move a block of n characters from one area of storage to another. It should be noted, however, that no real advantage results from this feature if the program requires access to the same storage module as that involved in the block operation. As a result, careful program design is required to realize the potential benefits of these overlapped internal operations. The input-output operations are of two types: character-block transfers and word-block transfers. Character operations permit either 6 or 12 bits to be transferred in parallel between core storage and the peripheral channel, while word operationE> allow 24-bit transfers. Each inputoutput transfer is initiated after a series of instructions which connect the desired channel, test for "busy" or other status conditions in the input-output equipment, and select the desired function. The input-output transfer instruction (a two-word instruction) is then issued to start the transfer. t A 24-bit interface unit (the 3307 Special Communication Channel) canbe used in place of two 3206 units. .2 RULES The following processes can take place simultaneously: o One computation; plus o One "block" operation (Search or Move); plus o A Console key-in operation; plus o As many buffered input-output operations* as there are buffers (up to about 50); plus o As many non-buffered input-output operations** as there are data channels (a maximum of 8 channels); plus * The present printers are always buffered; card equipment is optionally buffered. ** Paper tape, luagnetic tape, and random access drum and disk operations are non-buffered; the number of such operations may also be restricted by the manner in which the controllers are connected to the data channels. © 1 964 Auerbach Corporation and Info, Inc. 11/64 255: 111.101 • *** CDC 3300 As many "non-supervised" peripheral operations*** as there are appropriate units. The number of concurrent input-output operations may also be limited by the maximum throughput capacity of the computer system, which is 4,444,444 characters per second. Magnetic tape rewinding, backspace operations, and searching for file marks, disk arm positioning and address search operations are typical "nonsupervised" peripheral operations. TABLE I: SIMULTANEOUS OPERATIONS Start Time Cycle Time, DEVICE Time, msec. msec. Core Use Data Transmission Channel Use Time, msee. Core b Use Channel Use Stop Time Time, msec. 828, 838 Disk Files 250 av 0.0 1 msec Var 1.4 or 2.2% Yes 0.0 1311 Disk Storage Drive 170 or 270 av 0.0 1 msec Var 1. 6% Yes 0.0 Core Use Channel Use No 97.5 av O. a 1 msec Var 4.1% YeS 0.0 3235 Drum Storage 34.4 17.2 av 0.0 1 msee Var 3.2% Yes 0.0 861 Drum S,torage 34.4 17.2av 0.0 ? Var (41/1)% Yes 0.0 862 Drum Storage 17.2 8.6 av 0.0 Var (41/1)% Yes 0.0 405 Card Reader 1,200 cpm, unbuffered 50.0 18.0 0.0 Yes 32.0 1. 9% Yes 0.0 405 Card Reader 1,200 cpm, buffered 50.0 42.0 0.0 Yes 8.0 8.0% Yes 0.0 415 Card Punch 250 cpm, unbuffered 240.0 48.0 0.0 Yes 190.0 0.7% Yes 2.0 0.0 240.0 48.0 4.4% 2.2 msee 190.0 0.0% No 2.0 0.0 No BOO.O 84.0 0.0 Yes 514.0 0.3% Yes 2.0 0.0 No 2.8% 2.2 msee 514.0 0.0% No 2.0 0.0 No No 2311 Disk Storage Drive 415 Card Punch 250 cpm, buffered 523 Card Punch 100 cpm, unbuffered 523 Card Punch 100 cpm, buffered BOO.O 84.0 544 Card Punch 250 cpm, unbuffered 240.0 48.0 0.0 Yes 0.7% Yes 2.0 0.0 544 Card Punch 250 cpm, buffered 240.0 48.0 4.4% 2.2msec 190.0 0.0% No 2.0 0.0 3691 Paper Tape Reader 350 cps 2.9 0.0 Yes 2.9 <0.03% Yes 2.0 3691 Paper 'Tape Punch 110 cps 9.0 0.0 Yes 9.0 <0.02 Yes 3.0 0.0 No 0.0 Yes 1.0 <0.2% Yes 0.8 o. a No 0.0 Yes 9.0 <0.02% Yes 3.0 0.0 No 190.0 No No 3694 Paper Tape Reader 1,000 cps 1.0 3694 Paper Tape Punch 110 cps 3152 Line Printer ? 400 + 9.7LS 0 375 <0.01% O.lmsec 25 + 9.7LS 0.0 No 1403 Model 2 Printer 600 Ipm 100 + 5LS 0 80 <0.07% O.Imsec 20 + 5LS a.o No 1403 Model 3 Printer 1,100 \pm 55 + 5LS 35 <0.2% a.lmsec 20 + 5LS 0.0 No 501 Printer GO + 0 45 <0.07% 0.1 msee 13 + 6.7LS 0.0 No 0 105 <0.03% a. 1 msec 13 + B.7LS 0.0 No No 150 \pm 1,000 lpm B.7LS 505 Printer 120 + 6.7LS 500 \pm 601 Magnetic Tape Unit 20.8 KC 3.0 0.0 Yes Var 0.4% Yes 3.0 0.0 603 Magnetic Tape Unit 41. 7 KC 2.75 0.0 Yes Var 0.9% Yes 2.25 0.0 No 604 Magnetic Tape Unit 60.0 KC 2.75 0.0 Yes Var 1. 2% Yes 2.25 0.0 No 606 Magnetic Tape Unit 83.4 KC 2.75 0.0 Yes Var 1. 7% Yes 1. 75 0.0 No 607 Magnetic Tape Unit 120 KC 2.75 1. 75 0.0 Yes Var 2.4% Yes 0.0 No 692 Magnetic Tape Unit 30 KC 0.0 Yes Var 0.8% Yes 0.0 No 694 Magnetic Tape Unit 0.0 Yes Var 1.6% Yes 0.0 No 69G Magnetic Tape Unit 0.0 YeS Var 2.4% Yes 0.0 No 0.0 No 3692 Program Controlled Input-Output Typewriter 67 0 3293 Incremental Plotter 3.3 or 5.0 100 av b I LS Var 11/64 9.0 0.0 No Var '\)'\. 2 I-~ 10 - ~ ~ ~j;' \).'\.' \). 4 7 ". ~~"" i== f->-"'~'l 7 4 2 1 2 0.1 4 7 2 1.0 2 10.0 4 7 100.0 C, Number of Computations per Input Record ~ _ _ _ _~ Configuration VI Configuration VIlE ~ ~~ ©1964 Auerbach Corporation and Info,lnc. 11/64 255:201.500 CDC 3300 .5 GENERALIZED STATISTICAL PROCESSING . 51 Standard Statistical Problem A Estimates .512 Computation: . . . . augment T elements in cross-tabulation tables . .513 Timing basis: .. . using estimating procedures outlined in Users I Guide, 4:200.513 . .514 Graph: . . . . . . . . . . . see below. . 511 Record size: . . . . . . . thirty 2-digit integral numbers. 100.0 7 4 2 ~II 10.0 7 Time in Milliseconds per Record ~~ ~L ~/ ~"'/ 4 / VI 2 VIlB II' 1.0 7 4 2 0.1 2 1 4 2 7 10 4 7 2 100 T, NumiJer 01' Augmented Elements Homan numerals denote standard configurations. 11/64 4 7 1,000 CDC 6000 SERIES Control Data Corporation ( AUERBACH INFO, INC. PRINTED IN U. S. A. I CDC 6000 SERIES Control Data Corporation AUERBACH INFO, INC. PRINTED IN U. S. A. -& 260:001. 001 Sf""" CONTROL DATA 6000 SERIES CONTENTS /AEDP - AUERBAC~ REPORTS ~ CONTENTS Report 260: Control Data 6000 Series - General \ \, Introduction • • • • • • • • • • • • • . • . . • • • • • • • • • . • • . • • • • • • . • • • . Data Structure ••••••••••••••••••••••••.•...••••.•.•.• System Configuration (General) •••••••••.•••.••.••••••.•••• 260:011 260:021 260:031 Internal Storage Central Memory .••••.••••..••..•••.•...••..•.•••• Peripheral Processor Memory . . . . • . . . . • • . • • • . . . . . . • • • • Extended Core Storage ....••••••..•••..•••••..••.••• 6603 Disk File .•.•..•••.••••.•.•••••.••••.••.•.••. 6607 Disk File • • • • • . • . . . • . . . . . • • • • • . . . . . • • • . • . . • . . 6608 Disk File • • • • • . . • . • • • • . . . . . . • . . . . . . . • • • • . . • . • 852 Disk Pack Transport •.••••••••.••••••••••••.•.... 853 Disk Pack Transport ...••••.•••••.•.•.•••••••.••• 854 Disk Pack Transport •..•••.••..•••••••••.••••••• '. 260:041 260:042 260:043 260:044 260:045 260:045 260:046 260:046 260:046 Central Processors (General) ..••.••.••••••.•••••••.••.••. Peripheral and Control Processors (General) . • • • . • • • . • . . . . . • . . . 260:051 260:052 Console 6602 Display Console •.•.•.•.•.•••.••••••••••.••.•.• 6060 Remote Calculator ..••••••••.••••.•••••.•••.••• 6090 Entry/Display Console ..•••••••.•••••••..•••••••• 260:061 260:062 260:063 Input-Output: Punched Card and Tape 405 Card Reader ••••••••...•••.••••••..••••..•.••• 415 Card Punch •••••••••.•••••••••.•.••••••••....• mM 523 Card Punch ••••••.•••••••.•••••••••••••.••• mM 544 Card Punch .•••••••••••••••••••.•••.••••.•• 3691 Paper Tape Reader/Punch •.••••.•••••••••.••••..• 3694 Paper Tape Reader/Punch ••.•..••••••••••••...••• 260:071 260:072 260:072 260:072 260:073 260:073 Input-Output: Printers3152 Line Printer ..•••••••••••.•••••••••.•••..•.•• mM 1403 Printer •.••••••.•••.••••••.•••.••••••..•• 501 Line Printer ..••.••••.•.•.•••.•••.••••••.••.•• 505 Line Printer .••••.•••••••••.•••••.••.•.••••.•• 260:081 260.:082 260:083 260:083 Input-Output: Magnetic Tape 600 Series 7-Track Magnetic Tape Units •.•.•••••••.••.... 600 Series 9-Track Magnetic Tape Units ••••••.••••..•••.• 626 14-Track Magnetic Tape Unit ••.•••..•••••.•..•.•••• 260:091 260:092 260:093 Input-Output: Others 6411 Augmented Input-Output Buffer and Control •••••.••..••• 3276 Communications Terminal Controller .•.••••.••.•••••• 6600 Series Data Set Controllers • . . . • . . . . . . . • . . . . . . . . . . 260:101 260:102 260:103 Simultaneous Operations (general) " .••...••.••.•••••••••••. Instruction Lists ••••••.••.•••....•..••.•••.••••..•.•.• Data Codes .••••.••••..••••••••••••••••••••..••••••.• Problem Oriented Facilities ••.••.••••••••••••.•.••••.••.• Process Oriented Languages FORTRAN 66 ..••••••••••••••.••••••••..••••••••. COBOL ...•••••••.•••..••.•.••.••••••.••••.•.•• Machine Oriented Languages ASCENT Assembly Language .•••••.••••••.••.•.•..•••• ASPER Assembly Language ••.•••.•••.•••••••••.•••••• Operating Environment SIPROS (Simultaneous Processing Operating System) ••••••..•. © 1966 AUERBACH Corporation and AUERBACH Info, Inc. 260:111 260:121 260:141 260:151 260:161 260:162 260:171 260:172 260:191 2/66 CONTROL DATA 6000 SERIES 260:001.002 System Performance ..•••••.••••..••• "•••.•.•.••••...•.. Physical Characteristics ...•••.•••••••.•.••.•.•.•...••..• Price Data .••••••.•••.••••••••••••••.•..•.••..•••... 260:201 260:211 260:221 Report 263: Control Data 6400 Introduction • • • . • • • • • • • . • • • . • • • • • • . . • • . . • . . • . . . . • . . . . System Configuration .••••••• ; .•••••••••.••••••••.•••••. Central Processor • . . • • • • • • • • . • • . . • . • . . . • . • . . • • . . . • . • . . Peripheral and Control Processors .•••••••••••••••.•.•...•.. Simultaneous Operations .••••••••••••••••••••.•.•••..•.•. 263:011 263:031 263:051 263:052 263:111 Report 264: Control Data 6600 Introduction . • • • • • . • • • • • • . • • • • . • • • • • • • • . • . • • . • . . . . . System Configuration . • . • • • • • • • . • . • . • • • . . . . • . . . . . . . . • . Central Processor ..••..•••••••.••••••.••••..•.••..... Peripheral and Control Processors •.•••••••••••.••....•.•••. Simultaneous Operations .•.••.•••.•••••••.•.•.•...••...•. 264:011 264:031 264:051 264:052 264:111 /" Report 265: Control Data 6800 Introduction . • . . • . • . • . . . . • . • • . • . • . . . . • . . . • • • . . . . . . • . . System Configuration . . • . . . • . . • . . • • • . . • • . . • • • . • . . . • . . . • . Central Processor . • • . . . . • • • . . • • • • • • • • • . . • . • • . . . . . . . • • . Peripheral and Control Processors ....••.••••.••.•••••..•••• Simultaneous Operations . . • . • . . . • • • • • . • • . • . • • • . • • . . . . • . . . 265:011 265:031 265:051 265:052 265:111 / / 2/66 A. AUERBACH -& 260:011. 100 sm,,,, /AEDP AUERBAC~ CONTROL DATA 6000 SERIES INTRODUCTION REPDRTS INTRODUCTION .1 SUMMARY The Control Data 6000 Series is a group of three very fast, large-scale computer systems that have been designed to provide users with vast computational power in service of a large number of concurrently-operating programs. The marketing campaign for the 6000 Series, directed to both scientific and commercial computer users, emphasizes that the use of a large central computer system can be more economical for a company than the use of multiple smaller-scale systems scattered over a wide area. Such operational goals have necessitated the design of specialized central computing equipment, flexible peripheral systems, extensive data communications facilities, and highly sophisticated software support. Tl:.e minimum hardware configuration for the 6400 computer system - at the low end of the 6000 Series - includes one Central Processor with· a 100nanosecond clock-cycle time, a I-microsecond Central Memory of 32, 768 60-bit words, ten independently-operating Peripheral and Control Processors with private core storage units of 4,096 12-bit words each, and twelve floating input-output Data Channels that are each capable of transmitting I/O data at a rate of 2 million characters per second. Peripheral devices can include additional Peripheral and Control Processors, a new Extended Core storage unit, several new display units, disc files, magnetic tape units, and all of the peripheral units designed for use with the Control Data 3000 Series systems. Control Data also makes available the controllers, multiplexors, and adapters necessary to control data communications networks that utilize a wide variety of remote terminal equipment. Software for the 6000 Series represents a determined effort by Control Data to dispel a once-widespread impression that the corporation was unwilling or unable to develop and supply full-scale, integrated software support. Effective utilization of the powerful 6000 Series hardware demands a comprehensive, integrated software control system, and Control Data supplies such an operating system (SIPROS) with each 6000 Series system. The concurrent operation of multiple processors simultaneously executing a large number of programs is the normal mode of operation for the 6000 Series systems. Standard equipment configurations that include the Extended Core Storage unit are also well suited for time'-sharing operations. The SIPROS operating system coordinates and controls the many levels of concurrent operations inherent in these multiprocessing, multiprogramming, and time-sharing modes of operation. Monthly rentals for the 6000 Series systems range from about $30,·000 for a basic 6400 system to about $170,000 for a large 6800 system. The 6800 computer system appears to be rivalled only by the recently-announced Burroughs B 8500 in competition for the title of "largest computer in the world, "both in terms of magnitude of pure processing power and potential size of system hardware configuration. The Control Data 6600 was first delivered early in 1965. The less powerful, cheaper Control Data 6400 system, announced in December 1964, will have its initial delivery early in 1966. The ultra-high-speed 6800 (more than four times faster than the 6600) was also announced in December 1964. First delivery of the 6800 system is expected sometime in 1967. '. I ~' .. .2 PROCESSORS .21 Central Processors Every Control Data 6000 Series computer system includes a Central Processor, a centrill core memory, and ten Peripheral Processors, each with a private core memory bank. The 6600 and 6800 Central Processors contain ten specialized, independently-operating functional units that theoretically enable them to execute up to ten machine instructions simultaneously. The 6400 Central Processor contains a single general-purpose instruction execution unit. Additional central processing power can be obtained in 6400 cOIIJ.puter system~ by including a second 6400 Central Processor in the configuration. A 6000 Series Central Processor, at anyone time, can access only one continuous segment of the centr.al core memory, as defined by a Lower Boundary and an Upper Boundary. Any reference to a location outside this area which is attempted by a Central Processor program automatically results in an interrupt and a call to the executive program. The processor © 1965 AUERBACH Corporation ond AUERBACH Info, Inc. 11/65 CONTROL DATA 6000 SERIES 260:011. 210 .21 Central Processors (Contd.) does not access the central memory directly either for instructions or operands; instead, it uses an eight-word instruction stack (which holds the present instruction and the previous seven instruction words) and 24 operating registers: eight A (Address) registers, eight B (B-line or index) registers and eight X (60-bit operand) registers. Although the B-registers are used for purposes analogous to index registers, the form of the 6000 Series instruction, which never directly refers to central core memory operands, precludes the use of indexing or indirect addressing in the usual sense of these terms. The relationships among the processors, memory Units, and input-output channels are shown in Figure 1. On the left, the input-output channels are all shown connected to a tenway switch, so that input-output data can be passed through the independent memory banks of any of the ten identical Peripheral Processors (numbered 1 through 10). Each of the Peripheral Processors also has access to the central core memory of the system, and data can be transferred between the Peripheral Processor memories and the central memory without any Central Processor operations. CENTRAL PROCESSOR PERIPHERAL 80 CONTROL PROCESSORS * Figure 1. Structure of the Control Data 6000 Series Processors * Note: The 6400 has no instruction stack nor multiple arithmetic processing units. The instruction stack and the 24 operating registers act as a buffer between the comparatively slow core memory and the ten fast functional units, and allow the simultaneous operation of more than one of these units. Use of this relatively small number of registers permits great reductions in the instruction sizes, so that many three-address instructions require only 15 bits, or one-fourth of an instruction word. Parallelism of operation is one of the keys to the rapid processing speeds of the 6000 Series Central Processors. In addition to the ten concurrently-operating functional units in the 6400 and 6600 Central Processors, all Central Processors in the Series have the ability to access simultaneously up to eight locations in Central Memory. As a result, instructions and operands can be accessed in anticipation of their actual need, and Central Processor delays caused by the need to await completion of Central Memory accesses can be greatly reduced. The internal clock-cycle time of the 6400 and 6600 Central Processors is identical - 100 nanoseconds. Many instructions within the simplified 6000 Series instruction set consume only three or four internal Central Processor cycles. The 6600's 8-word instruction stack and 10 functional units make its performance considerably better than that of the 6400 (see comparative task timings in Table I). The 6800 Central Processor has a basic clock-cycle time of 25 nanoseconds and generally performs four times as fast as the 6600. However, Control Data intimates that the actual performance of the 6800 Central Processor will be significantly better than its specifications. Table I lists some characteristics and representative execution times of the Control Data 6400, 6600, and 6800 Central Processors. (Contd.) 11/65 A• AUERBACH INTRODUCTION 260:011. 220 TABLE I: CHARACTERISTICS OF THE 6000 SERIES CENTRAL PROCESSORS System Identity CONTROL DATA 6400 Computer System Report No. ,/ Word Length 263 264 265 Binary Bits 60 60 60 18 Decimal Digits 18 18 10 10 10 Radix Binary Binary Binary Fraction Size 48 or 96 48 or 96 bits 48 or 96 bits Exponent Size 11 bits plus sign 11 bits plus sign 11 bits plus sign Model Number 6401, 6404, 6405 6601, 6604, 6605 6801, 6804, 6805 Arithmetic Radix Binary Binary Binary Operand Length. Words 1 1 1 Instruction Length, Words 1/4 or 1/2 1/4 or 1/2 1/4 or 1/2 Addresses per Instruction 3 3 3 c=a+b Likely Fixed Point Execution 0.6* 0.3* 0.08* - - c = alb - c=a+b 1.1* 0.4' 0.1* 5.7' 1.0* 0.25' 0.73* Floating Point Representation Times, J.' sec (5 Digits Min. Precision) c = ab Likely Floating Point Execution c = ab Times, J.lsec c = alb \ - 5.6* 2.9* None None None Arithmetic Interrupt fnterrupt Interrupt Number of Index Registers Eight Eight Eight Indirect Addressing Not applicable Not applicable Not applicable Mathematical None None None Commercial None None None AND, INC OR, EXC OR Checking Boolean Operations AND, INO.OR, EXC OR AND, INC OR, EXC OR Table Look-up None None None Yes Yes Yes Console Typewriter Input Output Features and Comments * ( b~ts Data Transfers Special Editing Capabilities .22 CONTROL DATA 6800 Characters DATA STRUCTURE CENTRAL PROCESSOR CONTROL DATA 6600 No; displays are used Supported by 10 Peripheral Processorsj sequential execu- tion of one instruction at a time. . No; displays are used Supported by 10 Peripheral Processors; up to 10 instructiona can be executed concur- rently. No; displays are used Four times as fast as the CDC 6E!QOj otherwise almost identical . . .. Execution times are elapsed times for Register-to-Register tasks, with no allowance for transferring data to and from main core storage; these data transfers can be overlapped and do not necessarily add to the time used, Peripheral and Control Processors The ten Peripheral and Control Processors that form an integral part of every Control Data 6000 Series computer system are logically and functionally independent processors, each with a private core storage bank of 4, 096 12-bit words. The Peripheral Processors have an instruction repertoire of 64 instructions, including fixed-point binary addition and subtraction, testing instructions, incrementing instructions, and an Exchange Jump instruction that facilitates switching between programs. Due to the power and flexibility of the Peripheral Processors, many tasks that are performed by the central processors in more conventional systems are divided among the 6000 Series Peripheral Processors, permitting the 6000 Series Central Processor to concentrate upon performing the central computational loops of multiple programs. The principal roles of the Peripheral and Control Processors include controlling all input-output operations, performing executive and monitor services for the entire system, performing data transcription operations, and serving the Central Processor program by performing time-consuming operations such as data conversions, file searching, and array manipulations. The Peripheral and Control Processors that are used with the Control Data 6400 and 6600 systems have a clock-cycle time of 1 microsecond and use core storage modules with the same cycle time. The 6800 Peripheral Processors have an internal clock-cycle time of © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 260:011. 221 CONTROL DATA 6000 SERIES • 22 Peripheral and Control Processors (Contd.) 250 nanoseconds and a matching cycle time in their core memory modules. Most Peripheral Processor instructions can be executed within one to four processor cycles. Transfer of data between each of the Peripheral Processors and any of the twelve standard inputoutput Data Channels can proceed at up to 2 million characters per second in the 6400 and 6600 computer systems and at up to 8 million characters per second in the 6800 computer system. .3 INTERNAL STORAGE The Control Data 6000 Series offers a wide variety of internal storage devices of diverse capacities and speeds, designed to serve specific functions within the total integrated computer system. Central Memory can be considered as the private, high-speed core storage for the Central Processor, with direct data paths to the Peripheral Processors and to the optional Extended Core Storage unit. Central Memory capacities range from 320,768 to 1,310,720 six-bit characters; transfer rates extend from 80 to 400 million characters per second, depending on the unit's size and model. Table II lists the principal characteristics of the Central Memory units. TABLE II: CENTRAL MEMORY CHARACTERISTICS 6400 or 6600 Computer System Core storage Capacities, in 60-bit Words 32,768 65,536 Cycle Time per Word, J1.sec 1.0 1.0 Independent Banks of Storage 8 Interleaved Cycle Time per Word, J1.sec 0.13 Peak Transfer Rate, Millions of Words per Second 8 16 6800 131,072 1.0 32 0.10 10 0.10 10 32,768 65,536 131,072 0.25 0.25 0.25 16 8 0.03 32 0.025 32 0.025 40 40 Each of the ten Peripheral Processors has a core memory unit consisting of 4, 096 12-bit words to serve the general computational needs of the Peripheral Processor, to hold in residence the system's control programs, and to provide private input-output buffer areas for data transferred to and from Central Memory. Data can be transferred between a Peripheral Processor memory unit and Central Memory at the rate of 2 million and 8 million characters per second in the 6400/6600 and 6800 systems, respectively. Control Data 6000 Series users can optionally include the newly-developed Extended Core storage unit in their hardware configuration to provide very fast and comparatively inexpensive auxiliary core storage in capacities up to 167 million characters (see Table m). Blocks of data can be transferred between Extended Core Storage and Central Memory at the rate of 100 million characters per second in the 6400 and 6600 systems. Similar transfers in the 6800 can be effected at the rate of 400 million characters per second. The entire 1,310,720 characters of a 131K 6800 Central Memory can be exchanged with the same number of characters stored in Extended Core Storage in 6.5 milliseconds. These data transfer TABLE m: EXTENDED CORE STORAGE CHARACTERISTICS 6400 or 6600 Computer System Extended Core storage Capacities, in 60-Bit Words* Number of Memory Banks Number of Characters Accessed per Cycle Cycle Time, in Microseconds Peak Transfer Rate, Millions of Characters per Second * 11/65 6800 131,072 262,144 1,048,576 2,097,152 524,288 1 2 8 16 4 8 80 80 80 80 160 160 3.2 3.2 3.2 3.2 1.6 1.6 25 50 100 100 400 400 1,048,576 Larger Extended Core storage capacities, ranging up to 16,777,216 60-bit words, are available upon request. A (Contd.) AUERBACH ~ 260:011. 300 INTRODUCTION .3 INTERNAL STORAGE (Contd.) rates are so impressive that Control Data plans to utilize the technique of swapping programs between Extended Core Storage and Central Memory as the heart of its time-sharing systems for the 6000 Series. This "roll-in/roll-out" method provides the Central Processor with almost immediate access to any program. No internal parity checking is performed in any of the 6000 Series core storage units. Control Data emphasizes the high degree of reliability built into its third-generation core memories and suggests the use of software checking techniques when absolute assurance of reliability is required. The extra time required to perform some form of software checking is implied as being insignificant in view of the extremely high processing speeds of the 6000 Series systems. Three types of random-access disc storage units are offered as part of the 6000 Series hierarchy of storage devices. The 6603 Disk File is a Bryant-made unit capable of storing up to 80.8 million characters. Either the 6603 Disk File or the new 6607 or 6608 Disk File (with a better price/performance ratio) must be included in every 6000 Series configuration as the "System Disk." The 6607 can store up to 84 million characters of data, and the 6608 can hold up to 168 million characters. These two devices feature rapidaccess actuator arms in a reactively-balanced positioning mechanism developed by Control Data. The new 850 Series Disk Storage Drives can also be used with the 6000 Series. These units provide inexpensive "Disk Pack" storage with capacities up to 9.6 million characters per pack, and Model 852's Disk Packs are compatible with those used by the mM 1311 Disk Storage Drive. Table IV lists the principal features of these randomaccess disc storage devices. TABLE IV: DISC STORAGE CHARACTERISTICS Capacity (millions of characters per unit) Device 80.8 6603 Disk File 84 168 6607 Disk File System 6608 Disk File System 2.0 to 2.9 4.3 9.7 852 Disk Storage Drive 853 Disk Storage Drive 854 Disk Storage Drive Average Access Time (milliseconds) Data Transfer Rate (char/sec) Report Reference 93 1, 048, 000 to 1,342,000 260:044 59.3 59.3 1,680,000 3,360,000 260:045 260:045 77.5 70 70 77,730 208,333 208,333 260:046 260:046 260:046 INPUT-OUTPUT EQUIPMENT Control Data provides a wide range of local and remote peripheral devices for the 6000 Series, emphasizing that input-output equipment considerations should not be permitted to impede the performance of the powerful 6000 Series processing and core storage units. Any of the input-output units provided for the Control 3000 Series computer systems (and described in Report Sections 245:041 through 245:102) can be connected to a 6000 Series system through use of 6681 Data Channel Converters. Several other devices have been developed especially for use with the 6000 Series; these units are described below. " Ii) 6411 Augmented Input-Output Buffer and Control - a large-scale multipledevice subsystem that can virtually double the input-output capabilities of a basic 6000 Series configuration. The 6411's components include 12 high-speed bidirectional Data Channels, 10 Peripheral and Control Processors, each with a private core storage unit that consists of 4, 096 12-bit words, and one Main Memory unit consisting of 16,384 60-bit words. The 6411 is, in effect, an additional 6000 Series computer system, minus the Central Processor. Up to twelve Augmented Input-Output Buffer and Control Units can be connected to a 6400 or 6600 computer system. 6602 Display Console - a dual-display cathode-ray unit used as the basic local console device in every 6000 Series computer system. The 6602 uses two 10inch cathode-ray tubes as the sole output media and uses a console typewriter for input purposes. There are no other displays, indicators, switches, or other special-purpose hardware devices on the console. The system can edit and display instructions to the operator, messages and/or graphs for the programmer, or any other relevant data, in any appropriate format. The display can be retained on the scope as long as desired (perhaps until some action such © I 965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 260:011. 400 .4 CONTROL DATA 6000 SERIES INPUT-OUTPUT EQUIPMENT (Contd. ) as mounting a tape has occurred) and then erased to make room for other displays. Each line in the display can be up to 64 characters wide, and a maximum of 32 lines can be displayed. Graphical data can be displayed, but at present there is no provision for light pen input. During normal operation, one of the two scopes is reserved for communication with the computer operators and the other is used for messages and displays initiated by the program itself (see Figure 2). At least one Model 6602 Display Console is used with each Control Data 6000 Series system. Additional consoles can be used in conjunction with time-shared operations, with each scope servicing a different program or group of programs. .5 • 6090 Entry/Display Console - a 14-inch cathode-ray tube display device and associated typewriter-style keyboard, used as the basic component of a high-speed data entry and retrieval system. Slow-speed card reader and printer units can operate in conjunction with the 6090 Console to provide hardcopy records of the data requests and the retrieved information. Either 10 or 20 lines of 50 symbols can be displayed on the 6090's output screen. The 6090 is usually used as a remote unit, communicating with the central computer over voice-grade telephone lines. • 6060 Remote Calculator - a desk-type electronic calculator that permits users in remote locations to utilize the mathematical processing capabilities of a large-scale central computer. Problems can be keyed in on the keyboard, using a simplified FORTRAN-like mathematical notation. Computergenerated solutions are transmitted to the site of the 6060 Calculator over voice-grade lines and displayed on an illuminated 12-digit display panel. • 626 14-Track Magnetic Tape Unit - a specially-designed unit capable of recording at 800 rows per inch, with each row holding two 6-bit characters and two parity bits. The speed of the one-inch tape is 150 inches per second, developing a peak data transfer rate of 240, 000 6-bit characters per second. The 626 is not an industry-compatible unit; it was designed to provide high-performance data transfer capabilities within a 6000 Series system. (Standard 7-track and 9-track IBM-compatible magnetic tape units are also provided for use with the 6000 Series. ) DATA COMMUNICATIONS Due to the great power inherent in the 6000 Series processing equipment, many installations will include numerous remote devices communicating with the central computer via communications lines. Control Data offers facilities to connect any of its own remote terminal equipment and most of the industry-standard terminal devices to the 6000 Series systems. The 3276 Communication Terminal Controller is a multiplexing control unit that enables a wide variety of standard and specialized data communications devices to be connected to the standard 6000 Series Data Channels via a 6681 Data Channel Converter. First used with the Control Data 3000 Series systems, the 3276 Controller can control up to 32 simplex telegraph-grade lines (16 sending and 16 receiving), or up to 16 half-duplex or full-duplex telegraph-grade lines, or up to 8 half-duplex or full-duplex voice-grade lines. The 3276 provides the speed and mode conversions required to communicate with the 6000 Series systems. The 6600 Series Data Set Controllers are single-speed communications control units designed specifically for the 6000 Series computer systems. Five different models permit various types of communications devices and remote computer systems to be connected directly to the 6000 Series Data Channels. The 6600 Series Controllers communicate with the remote devices over the public or private communications facilities of the telephone or telegraph companies, using standard data set modems as interfacing units at the remote and central ends of the transmission lines. One model permits computer-to-computer communication at 40, 800 bits per second over Telpak A lines. Another model permits up to 200 Teletype Model 33 or 35 terminals to communicate with a single 6000 Series Data Channel. .6 SOFTWARE Five of the first six users of the Control Data 6600 were supplied with an interim software package centered around the "Chippewa" operating system. In addition to the standard operating system functions, such as system monitor, loader, peripheral and display device control, and library supervision, the Chippewa package also provides a FORTRAN IV compiler and a Central Processor assembly language. According to several reports, the performance of the Chippewa operating system and its components has been unimpressive and has failed to harness the potential power of the 6000 Series hardware. Control Data emphasizes that the Chippewa system is simply an interim software package, designed to permit early users to begin productive processing as soon as possible. 11/65 fA AUERBACH • (Contd.) 260:011. 600 INTRODUCTION .6 SOFTWARE (Contd.) Beginning in December 1965 and continuing through 1967, the SIPROS operating system and its associated control routines and compilers will be delivered. SIPROS (Simultaneous Processing Operating System) is the official operating system for the 6000 Series. Control Data expects that overall efficiency of the SIPROS programs will be at least 50% better than that of the original Chippewa operating system. SIPROS will be delivered in three phases, with each phase adding new or expanded language and control modules. SIPROS 1.0, to be delivered in December 1965, includes basic operating system functions, many of which are listed below. Phase 2 will be delivered in January 1966 and includes the routines necessary to handle all 3000 Series peripheral device controllers. SIPROS 3.0, scheduled for delivery in April 1966, will include all announced SIPROS functions in versions that will operate with any validly-configured 6000 Series system. A specialized version of SIPROS designed for remote time-sharing operations and centering around the Extended Core Storage unit is expected to be delivered during the third quarter of 1967. SIPROS' Executive ar-d Monitor routines assume full control of the system and multiprocess jobs from a job stack, using priorities to decide schedule details. One of the functions is to place the output data from a program in temporary storage when this is necessary to allow the program to run at peak· operational speed. Later, when appropriate equipment becomes available, the operating system handles the output data transcriptions runs. The operating system handles the compilation and the execution of programs written in FORTRAN-66, COBOL, ALGOL, ASCENT (the Central Processor assembly language), and ASPER (the Peripheral Processor assembly language). It is common practice for a programmer to write a program in more than one language, intermingling FORTRAN statements with ASCENT and ASPER coding, but using a common symbol table. During compilation, the FORTRAN compiler and the assemblers are loaded into Central Memory as one program in order to save load time when switching from one language to another. The resulting object program, now in binary machine-language form, can be tested and executed as one of the programs in the job stack. SIPROS requires the use of a Model 6603 or 6607/6608 Disk File, two magnetic tape units, a card reader, card punch, and printer. Two of the ten Peripheral Processors are permanently dedicated to the operating system, and others are used by the operating system whenever they are needed. Functions which are normally handled by the Peripheral Processors include disc reading and writing (which takes two processors), loading jobs into the system, bringing jobs from the disc unit into the central memory for execution, job termination functions, data transcription functions associated with jobs being executed, off-line data transcriptions, and comparisons. These services use the Peripheral Processors on an asavailable basis. A programmer can "take over" one or more Peripheral Processors for his own program, but of course this will reduce the number of Peripheral Processors available in the pool. Control cards loaded with each job describe time limits, equipment requirements, termination instructions for normal and error cases, etc. The time limits are specified in terms of central processor time usage, maximum number of cards punched, maximum number of lines printed, and maximum length of time the program should spend in a specific inputoutput loop. No provision is made for placing a maximum limit upon total elapsed time for each program; this is because several programs will normally be processed concurrently, and anyone program may be delayed as a result of overriding priorities of other programs. When an error stop occurs (due to an out-of-range address, exponent overflow, or occurrence of an indefinite result), a map and/or a dump of the job's allocated memory area is produced if previously requested. In any case, upon job termination a Job Accounting Log will be created for each program and either displayed on the console or written on some output medium. Charge distribution is a responsibility of the installation. A display of a typical job accounting record is shown in Figure 2. \ \ During the execution of a job, an input-output delay or some other occurrence may prevent that job from making further immediate use of the Central Processor. In such a case the Executive routine that resides in a reserved Peripheral Processor is notified by the monitor routine, whereupon it activates one of the other programs which is resident in the central core memory. That program will continue to make use of the central processing facilities until it too is interlocked, or until some other program which has a higher priority is able to make use of the central processing facilities. Each changeover from program to program can be accomplished within five to ten microseconds through use of a special Exchange Jump instruction. © 1965 AUERBACH Corporation and AUERBACH info, inc. 11/65 260:011.601 CONTROL DATA 6000 SERIES SYSTEM STATUS DISPLAY Jon NAME AND I"'TERNA1.10n NUMBER ~~~O~~~OUNT # 110 l'RIOIllTY RUN T[~IF. ESTIMATED I· . TIME USED ABSOLUTE LOCATION IN ME~IORY EQUII'~[ENT ASSIGNMENTS EQUIPMENT TYPE, LOGICAL UNIT # EQUIPMENT TYPE. LOGICAL UNIT # IF Jon IS ON ~!JK TI!E~E ~NTR[ES y,roULD BE REPLACED ITH IN .JO STACK EQUIP~'ENT TYPE, PHYSICAL UNIT NUMBER EQUlI'!l.IENT TYPE. I'HYSICAL UNIT NUMBER Figure 2. Cathode-Ray Display of a Set of Job Accounting Information as Produced for Each Job Handled by the SIPROS Operating System •6 SOFTWARE (Contd.) Control Data's FORTRAN-66 language is basically the same as FORTRAN-63 for the Control Data 1604-A computer system. The FORTRAN-66 dialect of FORTRAN IV permits the use of single and double precision floating-point, integer, complex, and logical operations in mixed mode. ENCODE/DECODE statements permit internal transfers of data within core memory, and other specifie instructions are provided for input-output buffering purposes when the programmer elects to override the system's automatic buffering facilities. FORTRAN-66 also permits the use of 6000 Series central register names as operands and the use of ASPER and ASCENT assembly-language statements at any place in the FORTRAN program. The FORTRAN-66 compiler provides an optional code optimization algorithm which simulates the execution of the initially-generated object code in order to determine ways to utilize more effectively the Central Processor's 24 central registers and (in the 6600 and 6800 systems) 10 functional units. Control Data also supplies an ASA standard FORTRAN IV compiler that can function under control of SIPROS and a special trllnslation program that can convert existing FORTRANIV programs to the more flexible (but non-compatible) FORTRAN-66 language. The ASCENT and ASPER assemblers are parts of the basic integrated software package that also includes the FORTRAN-66 compiler and a library maintenance system (LIBRIOUS). ASCENT, the assembly language used for coding Central Processor routines, contains standard assembly-language features, including the use of literals, programmerdefined macros, pseudo-instructions, and system macros to control the use of Central Memory and disc storage areas. Macros are also provided to control program overlays, to initiate Peripheral Processor programs, and to communicate with SIPROS. The ASPER assembly language permits direct control of the Peripheral Processors when specialized tasks are to be executed. (Normally, all Peripheral Processor task assignments and specifications are performed by SIPROS according to the needs of the currentlyoperating Central Processor program). ASPER includes all the facilities necessary to utilize the input-output functions of the Peripheral Processors, as well as the facilities to use these processors as standard computational/logical units. ASPER statements can be coded in-line with ASCENT statements. SIPROS provides a control system called the File Manager for handling the storage, retrieval, usage, and modification of data files stored on mass storage devices. Routines are supplied for full control of drum, disc, and Extended Core Storage units, and for dumping and reloading magnetic tape files. The File Manager can normally perform its functions through the use of a single Peripheral Processor, using SIPROS control routines whenever possible. A COBOL-65 compiler is promised for use with the 6000 Series, but no delivery date has yet been announced. The 6000 Series ALGOL compiler is scheduled for delivery in August, 1966. Other software packages planned for the 6000 Series include KWIC, SIMSCRIPT, PERT TIME, PERT COST, a Statistical Programming Package, an IBM 7090/7094 Simulator, a linear programming routine, and a sort/merge routine. 11/65 A AUERBACH • 260:021. 100 ~ "'ND'" IABD:!? AUERBAC~ CONTROL DATA 6000 SERIES DATA STRUCTURE REPORTS DATA STRUCTURE .1 STORAGE LOCATIONS Name of Location Size Purpose or Use Word Central Memory: 60 bits basic addressable storage unit; holds 10 characters, up to four instructions, or one singleprecision fixed-point or floating-point binary operand. basic addressable storage unit; holds two characters, one single-precision fixed -point binary operand, one 12-bit instruction, or half of a 24-bit instruction. Peripheral Processor Memory: 12 bits Extended Core Storage 6400 and 6600 systems: 6800 systems: 480 bits 960 bits Row (magnetic tape) Models 601 through 607: } 7 bits Models 692, 694, and 696: 9 bits Model 626: 14 bits .", Sector (Disc Storage) 6603 Disk File: 6607/6608 Disk File: 852 Disk Storage Drive: 853/854 Disk Storage Drives: .2 " holds 1 character and 1 parity bit. holds 1 byte and 1 parity bit, or 2 decimal digits and 1 parity bit. holds 2 6-bit characters and 2 parity bits . basic addressable storage unit. basic addressable storage unit. basic addressable storage unit. maximum-sized addressable storage unit. INFORMA TION FORMATS Type of Information ( 346 12-bit words 2,560 12-bit words 100 7-bit characters 4,833 6-bit characters basic unit of Extended Core Storage. Representation Alphanumeric character: . . . . . . • . . . . . . . . . . . . . . . . 6-bit portion of a word. Fixed-point binary operand: . . . . . . . . . . . . . . . . . . . . • . one word of 12 or 60 bits. Floating-point binary operand: . . • . . . • . . . . . . . . . . . • . one 60-bit word; 48-bit fraction and 12-bit binary exponent. Floating-point binary operand (double precision): . • . . . . • two 60-bit words; 96-bit fraction and 12-bit binary exponent. Instruction Central Processor: . • • . . . • . . . . . . . . . . . . . . . . . . . 15 or 30 bits. Peripheral Processors: . • • . . • • . . . . . . . • . . . • . . • . 12 or 24 bits. I ~ © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 -l. 260:031. 100 STINDARD /AEDP CONTROL DATA 6000 SERIES SYSTEM CONFIGURATION - AUERBAC~ RUQRTS SYSTEM CONFIGURATION .1 BASIC SYSTEMS The overall design of the Control Data 6000 Series provides the flexibility for a great variety of system configurations. Since the 6000 Series centers on the use of ultra-highspeed processors and many independent storage units, there are few, if any, constricting or conflicting configuration rules regarding the number, type, and mix of peripheral devices that can be connected to each system. The nucleus of every 6000 Series computer system consists of a Central Processor, a large Central Memory, 10 Peripheral and Control Processors with individual small memories, and 12 bi-directional Data Channels for input-output operations. Figure 1 illustrates this basic configuration. Figure 2 shows the Dual Central Processor capability of the 6400 computer system. The two Central Processors are functionally identical, and their use provides the Control Data 6400 user with the multiprocessing power of 12 independently-operating processors (10 Peripheral Processors and 2 Central Processors). Both Central Processors have full access to all of the storage and input-output facilities of the 6400 system. Figure 3 represents the Extended Core Storage configuration of the Control Data 6000 Series. This configuration differs from the basic configuration in Figure 1 solely in its use of Control Data's recently-developed Extended Core Storage Unit, which provides up to 167 million characters of high-speed auxiliary core storage. This arrangement of processors and core storage provides for extremely rapid (up to 400 million characters per second) transfers of programs and segments of programs between the Central Processor and Extended Core Storage, a facility that makes possible a direct, efficient approach to time-sharing activities. Ttle 6600 and 6800 computer systems can also be configured in what is termed the Augmented Input-Output System, illustrated in Figure 4. The distinguishing feature of this configuration is the Augmented Input-Output Buffer and Control device, designed to nearly double the simultaneously-operating input-output device capability of the basic 6000 Series computer systems. This device is actually an input-output subsystem that includes the same number of Data Channels (12) and the same number of Peripheral and Control Processors (10, each with 4,096 12-bit words of core memory) as a full 6400 system, but has a smaller Main Memory (16,384 60-bit words) and no Central Processor. As many as 12 of these Augmented Input-Output Buffer and Control devices can be connected to a 6000 Series computer system, thereby providing virtually unlimited I/O flexibility. CENTRAL PROCESSOR Figure 1. Basic 6000 Series System (Contd.) 11/65 A AUERBACH ~ 260: 031. 101 SYSTEM CONFIGURATION CENTRAL PROCESSOR CENTRAL MEMORY Figure 2. Dual Central Processor 6400 Computer System CENTRAL PROCESSOR EXTENDED CORE STORAGE CENTRAL MEMORY I~ Figure 3. Extended Core Storage Configuration CENTRAL PROCESSOR AUGMENTED INPUT-OUTPUT BUFFER AND CONTROL CENTRAL MEMORY MAIN MEMORY Figure 4. Augmented Input-Output System © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 260:031. 200 CONTROL DATA 6000 SERIES .2 INPUT-OUTPUT EQUIPMENT The peripheral devices can be classified in three general categories, as follows: • System Peripherals, or those used by the computer system for operator communications and for residence and working storage for its control and problem programs. Included in this category are the following devices: Display Console Disk System Disk System Disk System Extended Core Storage Units 6602 6603 6607 6608 • Local Peripherals, or those directly connected to the Data Channels and normally located in the same room as the Central Processor. Devices that can be used as local peripherals include: 800 Series Disk Files 6603 Disk System IBM 2311 Disk Storage Drive IBM 2314 Disk Storage Drive 861 Drum Unit 862 Drum Unit 3265 Drum Unit Extended Core Storage Units 405 Card Reader 415 Card Punch 3691 Punched Paper Tape Reader/Punch 3694 Punched Paper Tape Reader/Punch 501 Line Printer 505 Line Printer 600 Series Magnetic Tape Transports 3293 Incremental Plotter • Remote Peripherals, or those normally connected to the Data Channels from a remote location by means of communications lines. Devices that can be used in this manner include: 6060 Remote Calculator 6602 Display Console Any peripheral device designed for use with the Control Data 3000 Series (and described in Computer System Reports 245, 246, and 247) can be connected to any 6000 Series system through the use of a 6681 Data Channel Converter. Special-purpose peripheral units are available from Control Data Corporation for linking 6000 systems to many varieties of communications networks, including those using analog input and output. Diagrams and prices of standard system configurations for each member of the Control Data 6000 Series are presented in the subreports for the individual 6000 Series models: Control Data 6400 •••••••.•••••.•••••••••• Control Data 6600 •••••••••••••••••••••••• Control Data 6800 •••••••••••••••••••••••• 11/65 A AUERBACH '" Section 263:031 Section 264:031 Section 265:031 .& 260:041. 100 STmARD CONTROL DATA 6000 SERIES INTERNAL STORAGE CENTRAL MEMORY /AEDP AUERBAC~ REPORTS i,..--- INTERNAL STORAGE: CENTRAL MEMORY .1 GENERAL . 11 Identity: . . . . . . . . . . Central Memory for Control Data 6400, 6600, and 6800 computer systems. .12 Basic Use: .. .13· Description . . . . . working storage. The Central Memory units for the Control Data 6000 Series are high-speed, high-capacity magnetic core storage units designed to provide memory-tomemory communication between the major components of the system at memory access speeds. The high-speed data transfers contribute significantly to the multiprogramming and multiprocessing capabilities of the Control Data 6000 Series. Table I lists the storage capacities and cycle times for the Central Memory units available with Control Data 6400, 6600, and 6800 computer systems. The current programs and data blocks stored in the Central Memory can be simultaneously accessed by the Central Processor, by all of the Peripheral and Control Processors, and by the optional Extended Core Storage unit. As a result of this arrangement, all of the processors can operate independently of each other, and yet can communicate with each other at high speeds. The Central Memory can effectively (and simultaneously) serve as the Central Processor's private memory, as the buffer between the Peripheral and Control Processors and the Central Processor, and as storage for job stacking from the Extended Core Storage unit. The basic memory module of the Central Memory consists of a coincident-current magnetic core memory of 4,096 12-bit words. Five of these basic modules are stacked together to form one bank of 4,096 60-bit words. Banks of memory are then grouped in 8, 16, or 32-bank units, forming the three sizes of Central Memory available with the Control Data 6000 Series: 32,768, 65,536, or 131,072 60-bit words. Each memory bank is logically independent, and consecutive memory addresses are assigned to different banks. The number of simultaneous accesses permitted to Central Memory is eight (one per bank) in 32K systems and TABLE I: ten (limited by the capacity of the Central Address Control) in 65K and 131K systems . Maintenance of the Central Memory's core storage banks is facilitated by the design of the banks. Each of the five core storage modules that comprise a memory bank is constructed in small plugin modules, individually accessible for ease of examination and/or replacement. There are two basic core storage cycle times for the Central Memory units: the 6400 and 6600 computer systems use a Central Memory with a 1microsecond cycle time, and the 6800 computer system uses a 250-nanosecond Central Memory. All words in storage are accessed in parallel by bank, and up to 10 banks can be accessed simultaneously. The resulting peak data transfer rates range from 8 to 40 million 60-bit words per second, as shown in Table 1. The address word for access to Central Memory locations consists of a 12-bit address quantity and a 5-bit bank quantity. The bank quantity defines one of the 8, 16, or 32 storage banks, and the address quantity defines the 4,096 separate word locations within each bank. All references to Central Memory are evaluated by its Address Control unit and then sent to the addressed word location in the appropriate bank. Address Control accepts addresses from all parts of the system according to a fixed priority scheme in order to avoid conflicts. For example, memory access requests from the Central Processor have priority over requests from the Peripheral and Control Processors. The memory protection scheme used in the Central Memory of the Control Data 6000 Series is simple and yet apparently adequate to fulfill the needs of a system in which many programs and their data reside concurrently in the Central Memory. Each program is assigned a Field Length value at assembly, compilation, or load time. This value determines the upper boundary limit for all references to the program. Another individual program 6000 SERIES CENTRAL MEMORY CHARACTERISTICS Computer System 6800 6400 or 6600 Core Storage Capacities, in 60-bit Words 32,768 65,536 131,072 32,768 65,536 131,072 Cycle Time per Word, J.!sec 1.0 1.0 1.0 0.25 0.25 0.25 Independent Banks of Storage 8 Interleaved Cycle Time per Word, J.!sec 0.13 Peak Transfer Rate, Millions of Words per second 8 16 0.10 10 32 0.10 10 8 0.03 32 © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 16 0.025 40 32 0.025 40 11/65 260:041. 130 . 13 CONTROL DATA 6000 SERIES Description (Contd.) .27 value, the Reference Address value, is assigned to the program when it is initially called into Central Memory. This value determines the basic core storage address, or lower boundary, of the program. Any memory reference within the program that exceeds the value of the Field Length plus the Reference Address register causes an interrupt, halts the Central Processor, and alerts the sys tem operator. Interleaving Levels: .• 8 with 32K Central Memory; 10 with 65E: and 131K Central Memories. . 28 Access Techniques .281 Reading and recording method: . . • . . . • . . coincident current. .283 Type of access: . 29 The ReferenceAddress register scheme also facilitates dynamic program relocation, since all addresses within a program are relative to the base value of the Reference Address. This address can be altered as the program is relocated in Central Memory. .292 Peak data rates; 6400 and 6600 Central Memory Cycling rate: •.... 1,000,000 cps. Unit of data: ..•• 60-bit word. Gain factor: . . . . • . 8 or 10 simultaneous accesses. Data rate: .•...•• 1,000,000 words per second. Compound data rate: . 8,000,000 or 10,000,000 words per second. No parity checking is performed on data transferred to or from Central Memory. Control Data emphasizes the reliability of the Central Memory's core storage modules, and indicates that rapi~ software checks can be utilized whenever desired to ensure the accuracy of results. In addition, a memory diagnostic program can be periodically called into operation and run concurrently with the problem programs to verify that the memory modules are functioning properly. .14 Availability: . . . . . . . 6 months. .15 First Delivery: . . .. 6400: March 1966. 6600: 1965. 6800: 1967. · 16 Reserved Storage: ... none. ·2 PHYSICAL FORM .21 Storage Medium: ..•. magnetic core. . 22 Physical Dimensions: . each basic memory module consists of 4, 096 12-bit words. .23 Storage Phenomenon: . direction of magnetization. • 24 Recording Permanence .241 Data erasable by instructions: . . . . . . · 242 Data regenerated constantly: . . . . . . . · 243 Data volatile: . . . . . . · 244 Data permanent: . . . . · 245 Storage changeable: .. .25 .26 Peak data rates; 6800 Central Memory Cycling rate: . . . . . 4,000,000 cps. Unit of data: . • . . . . 60-bit word. Gain factor: ....•• 8 or 10 simultaneous accesses Data rate: • . . . . . • 4,000,000 words per second. Compound data rate: . 32,000,000 or 40,000,000 words per second. .3 DATA CAP ACI'IY .31 Module and System Sizes: . • . . • . . . . . see table below. .32 Rules for Combining Modules: . • . . . . . . all permissible capacities are shown in Paragraph .31; modules cannot be interchanged between 6400/6600 and 6800 computer systems . .4 CONTROLLER: •••• no independent controller • .5 ACCESS TIMING .52 Simultaneous Operations: . . . . . . 8 or 10 memory accesses . .53 Access Time Parameters and Variations yes. no. no. no. no. Access time: Cycle time: For data unit of: Data Volume per Memory Bank Words: . . . . . . . • • . Characters: . . . . . . . Digits: . . . • • . . • . . . Instructions: . • . . . . . 4,096. 40,960. 73,728. up to 16,384. 6800 0.2 J.!sec 0.25 J.!sec 60-bit word CHANGEABLE STORAGE: •••••• none. .7 PERFORMANCE .72 Transfer Load Size With Peripheral Processor Core Store: . . . . . . . . • 4,096 12-bit words. Module and System Sizes (for all 6000 Series Central Memories) Words: Characters: Instructions: Banks: Modules: 11/65 6400/6600 0.8 J.!sec 1. 0 J.!sec 60-bit word .6 Banks per Physical Unit: ..•..••• 8, 16, or 32 • . 31 . . . . uniform. Potential Transfer Rates 32,768 327,680 Up to 131,072 8 40 65,536 655,360 Up to 262,144 16 80 fA AUERBACH ~ 131,072 1,310,720 Up to 524,288 32 160 / (Continued on Page 260: 042. 300. overleaf.) -&. 260:042. 100 mHOm ~\EDP - AUERBAC~ CONTROL DATA 6000 SERIES INTERNAL STORAGE PERIPHERAL PROCESSOR MEMORY REPORTS INTERNAL STORAGE: PERIPHERAL PROCESSOR MEMORY .1 GENERAL • 11 Identity: ••••.••.•. Peripheral and Control --Processor Memory. .12 Basic Use: •.•.•••• working storage for Peripheral and Control Processor programs, and high-speed buffers between the Peripheral and Control Processors and Central Memory. . 13 Description Each of the ten Peripheral and Control Processors included in every Control Data 6000 computer system contains its own independent core storage unit, consisting of 4,096 12-bit words. The memory cycle time for the memories associated with the 6400 and 6600 systems is 1 microsecond per word; the cycle time for the memories associated with the 6800 system is 250 nanoseconds. Effective data transfer rates of 2 million characters per second can be obtained when data is transferred between the Central Memory and a Peripheral and Control Processor memory of the 6400 and 6600 computer systems; the corresponding rate for 6800 systems is 8 million characters per second. I \" The Peripheral and Control Processors and their associated memory units can function independently of each other and also independently of the Central Processor and Central Memory. However, the several roles of the Peripheral Processors result in intersystem communication activities. The Peripheral Processor memories hold in residence the various control programs of SIPROS, the operating system that controls and integrates the operations of the total 6000 Series system. These memory units also hold the programs that direct input-output activities, and they act as high-speed buffers for data transmission to and from Central Memory. The Peripheral and Control Processor memory units also act as conventional memory units, supplying instructions, issuing operands, and storing results for their respective processors. The 4,096 individual storage locations within each Peripheral and Control Processor memory unit can be addressed in several ways. A six-bit address is used to access directly the first 64 words of storage. If this six-bit address is zero, another twelve-bit address is appended to address directly any of the 4,096 locations. This 18-bit address scheme can also be used for indirect addressing of the 4,096 locations by using the first six bits as an index register to produce operand addresses. Data from an external I/O device is read into the memory of a Peripheral and Control Processor, and then, if necessary, transferred to Central Memory for use by the Central Processor. There are four instructions that transfer one word or a block of words between the peripheral memory units and Central Memory. Separate input-output instructions control the transfer of data between the peripheral memory units and the I/O devices • The Peripheral and Control Processor memory units do not utilize parity bits to check the integrity of data transfers. Control Data emphasizes the inherent reliability of the memory units, and suggests software checking of memory performance whenever checking is regarded as absolutely essential. There are no memory protection features in the peripheral memory units. However, Peripheral Processor memory accesses are normally under strict control of reliable system programs assigned by SIPROS to perform specific tasks in support of Central Processor programs. User programming of the Peripheral Processors is possible through use of the ASPER assembly language, but such programming is not recommended unless absolutely essential. .14 Availability: .••.••• 9 months. • 15 First Delivery: ••••• 1965. · 16 Reserved Storage: •.• none. •2 PHYSICAL FORM • 21 Storage Medium: ••.• magnetic core. .22 Physical Dimensions: . array size is 4,096 bits by 12 bits. .23 Storage Phenomenon: • direction of magnetization. · 24 Recording Permanence .241 Data erasable by instructions: ••.••• . 242 Data regenerated constantly: ••..••• • 243 Data volatile: ..•.•• • 244 Data permanent: •••.• • 245 Storage changeable: •• .25 yes • no. no. no. no. Data Volume per Memory Bank Words: •••••••••• 4,096. Characters: •...••• 8, 192. Instructions: •.•.••• 4,096. • 26 Banks per Physical Unit: •.....•••..• one per Peripheral Processor. .27 Interleaving Levels: •• l. .28 Access Technique: ••• coincident current. .29 Potential Transfer Rates .292 Peak data rates: 6400 and 6600 peripheral memories Cycle rate: ••••••• 1 J.l.sec. Unit of data: •••••• 12-bit word. Data rate: .••••••• 2 million char/sec. Peak data rates: 6800 peripheral memory Cycle rate: ..•••.. 0.25 J.l.sec. Unit of data: •.•.•. 12-bit word. Data rate: ••••••• 8 minion char/sec. © 1965 AUERBACH Corporetion end AUERBACH Info, Inc. 11/65 CONTROL DATA 6000 SERIES 260:042.300 .3 DATA CAPACITY: ••• every Control Data 6000 Series system includes 10 independent Peripheral and Control Processor memory units, each of which contains 4,096 12bit words. .4 CONTROLLER: ••.•• no independent controller. •5 ACCESS TIMING • 52 Simultaneous Operations: ••..••••••• one operation in each of the 10 Peripheral and Control Processor memory units. • 53 .6 CHANGEABLE STORAGE: •.•.••. none. .7 PERFORMANCE .72 Transfer Load Size: •. from 10 to 8, 190 characters. .73 Effective Transfer Rate: •.•..•.•••• 2 million char/sec in 6400 and 6600 • 8 million char/sec in 6800 • .8 ERRORS, CHECKS, AND ACTION Error Check or Interlock Invalid address: Invalid code: Receipt of data: Recording of data: Recovery of data: Dispatch of data: Timing c-onflicts: Access Time Parameters and Variations .531 For uniform access (6400, 6600) Access time: •••••. 0.5 fJ,sec. Cycle time: • . • • . . • 1. 0 fJ,sec. For data unit of: ••. 12-bit word. For uniform access (6800) Access time: ••.... 0.125 fJ,sec. Cycle time: ••.•..• 0.250 fJ,sec. For data unit of: •• , 12-bit word. impossible. impossible. no check. no check. no check. no check. check Action Central Processor accesses are given priority. INTERNAL STORAGE: CENTRAL MEMORY (CONTINUED FROM PAGE 260:041. 130) .72 With self (Contd. ): ... 2.5 million char/sec (via 6400 Central Processor); 13.3 million char/sec (via 6600 Central Processor). Transfer Load Size (Contd.) With Extended Core Store: ..••••..• 131,072 60-bit words. With 6603 Disk File: . 4,096 12-bit words. .73 .73 With a Peripheral Processor Core Store: • . . . . . . . • 8 million char/sec. With Extended Core Store: . . . . . . . . . 192 million char/sec (32K . systems) or 240 million char/sec (65K and 131K Systems). With 6603 Disk File: • 1. 2 million char/sec. With self: . . . . . . • . 4 million char/sec (via Peripheral Processors); 53.2 million char/sec (via Central Processor). Effective Transfer Rate (6400/6600) With a Peripheral Processor Core Store: . • . . . . . • . 2 million char/sec With Extended Core Store: . . . . . . . . . 48 million char/ sec. (32K systems) or 60 million char/sec (65K and 131K systems). With 6603 Disk File:. 1.2 million char/sec. With self: . . . . • . • . 1 million char/sec (via Peripheral Processors); .8 ERRORS, CHECKS, AND ACTION Check or Interlock Action Invalid address: check Invalid code: Receipt of data: Recording of data: Recovery of data: Dispatch of data: Timing conflicts: Reference to locked area: not possible. none. none. none. none. not possible. check Control is transferred to Peripheral Processor monitor. Error 11/65 Effective Transfer Rate (6800) A Control is transferred to Peripheral Processor monitor. AUERBACH ~ -&. 260:043. 100 STANDm CONTROL DATA 6000 SERIES INTERNAL STORAGE EXTENDED CORE STORAGE /AEDP \ - AUERBAC~ ~'-. REPORTS INTERNAL STORAGE: EXTENDED CORE STORAGE .1 GENERAL . 11 Identity: . . . . . . . . . . 6400 Extended Core Storage. 6600 Extended Core Storage. 6800 Extended Core Storage. .12 .13 Basic Use: . . . • . . • . fast auxiliary core storage. Description The Extended Core Storage provided for use with the Control Data 6000 Series computer systems offers very fast and comparatively inexpensive auxiliary core storage in capacities of up to 167 million characters. The peak data transfer rate that can be achieved in moving blocks of data betwee the Extended Core Storage and the Central Memory unit is 400 million characters per second in Control Data 6800 systems. The primary role of Extended Core Storage in the 6000 Series computer systems is to hold large numbers of scheduled programs and data in readiness for immediate transfer to Central Memory for use by the Central Processor. When Extended Core Storage is included in a 6000 Series system, the multiprogramming capabilities are made even more powerful and efficient than with abasic system. Not only can the large Central Memory hold several programs or segments of programs for alternate execution by the Central Processor, but the Extended Core Storage can exchange the entire contents of Central Memory within a few milliseconds to provide the Central Processor with rapid access to a vast store of programs. The entire 1,310,720 characters contained in a Control Data 6800 Central Memory can be exchanged with the same number of characters stored in Extended Core Storage in 6.5 milliseconds. ( ( The transfer rates are so impressive that Control Data plans to utilize the concept of swapping programs between Extended Core Storage and Central Memory as the heart of its time-sharing system for the 6000 Series. Rather than having a relatively small number of program segments arranged in independent "pages" of Central Memory, Control Data advocates arranging a large number of program segments in Extended Core Storage. The roll-in/roll-out method is then utilized to provide the Central Processor with almost immediate access to any program and to switch programs with little delay when each "time-slice" is completed. The high data transfer rates are made possible by synchronization of the access and cycle times of the Extended Core Storage with those of Central Memory, and by the use of a special, synchronously designed data channel to connect these two storage units. Other vital factors in the speed potential of the Extended Core Storage are its parallel access method (capable of accessing either 480 or 960 bits simultaneously) and its division into up to four independent modules or banks, all of which can be accessed simultaneously. Successive data words are stored in different banks so that the maximum number of banks can be concurrently used in the transfer of large blocks of data . The Extended Core Storage that is provided for use with the Control Data 6400 and 6600 computer systems is physically different from that supplied for use with the 6800 system, although their functions are identical. The 6400's Extended Core Storage is arranged in the form of 16,384 480-bit words per bank, which is equivalent to 131,072 60-bit computer words per bank. Four banks can be arranged in a bay that contains 524,288 60-bit words, and four bays can be joined to form a 2,097, 152-word "star." A total of 8 stars of Extended Core Storage (167,772,160 characters) can be accessed by a single 6400 or 6600 computer system, and each 60-bit word is individually addressable. The cycle time for the Extended Core Storage used with the 6400 and 6600 computer systems is 3.2 microseconds per 480-bit memory-bank word. Therefore, the data transfer rate per bank of 1,310,720 characters is 25 million characters per second. Although a maximum of 128 banks of storage can be connected, only four can be simultaneously accessed by the Central Processor. Thus, the maximum data transfer rate between the Extended Core Storage and Central Memory of a Control Data 6400 and 6600 is 100 million characters per second. Table I presents the capacities and speeds of the 6400/6600 Extended Core Storage and compares these characteristics with those of the faster 6800 Extended Core storage. The 6800 Extended Core Storage is organized in banks of 8,192 960-bit words, with a cycle time of 1.6 microseconds. Four memory banks can be grouped in a bay, and a maximum of 2 bays can be supported by a 6800 system, providing a total storage capacity of 20,971,520 characters. The data transfer rate per bank is 100 million characters per second. Since a maximum of four banks are accessed simultaneously, the maximum transfer rate per 6800 computer system is 400 million characters per second. Data transfers between Extended Core Storage and Central Memory are effected by means of two Central Processor instructions and two central registers. The AO register specifies the initial 17-bit transfer address in Central Memory of a word or block of words, and the XO register specifies the initial 24-bit transfer address in Extended Core Storage. The Read and Write Extended Core instructions transfer data between Extended Core Storage and Central Memory, beginning at the locations specified in the XO and AO registers, respectively. During the transfer of data to or from Extended Core Storage, the Central Memory can be periodically accessed by the Central Processor and the Peripheral and Control Processors. Extended Core Storage can also be utilized in those 6400 and 6600 computer systems that make use of © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 260:043.130 CONTROL DATA 6000 SERIES TABLE I: EXTENDED CORE STORAGE CHARACTERISTICS Control Data Computer System Extended Core Storage Capacities in 60-bit Words* 131,072 Number of Characters Accessed per Cycle 80 262,144 6800 1,048,576 80 80 3.2 3.2 3.2 Number of Memory Banks 1 2 8 25 50 100 * 524,288 1,048,576 160 3.2 160 1.6 1.6 16 4 8 100 400 /- 400 Larger Extended Core Storage capacities, ranging up to 16,777,216 60-bit words, are available upon request. of results whenever such verification is thought to be absolutely essential. Memory protection is provided by the upper and lower boundaries associated with every problem program. Description (Contd.) the 6411 Augmented Input-Output Buffer and Control device (see Section 260:101). With this configuration, data can be transferred not only between Central Memory and Extended Core Storage, but also between the 6411's Main Memory and Extended Core Storage. The Main Memory of the 6411 can be used to gather programs from remote locations and transfer them to Extended Core Storage for eventual execution by the Central Processor. This configuration seems well-adapted for use in Control Data's approach to time-shared operations. The transfer of data between Extended Core Storage and the 6411's Main Memory is effected by two instructions in the 6411's Peripheral and Control Processors: Read Program Address and Exchange Jump. These Peripheral Processor instructions normally communicate with the Central Processor, but when used with the Peripheral Processors of the 6411 unit, they are free to take on other meanings because there is no Central Processor in the 6411 subsystem. In configurations that employ a 6411 and Extended Core Storage, the Read Program Address instruction examines the "busy" status of the data channel that connects the Main Memory of the 6411 to the Extended Core Storage. The Exchange Jump instruction in this environment initiates a memory read or write operation and specifies the word count and starting addresses in Main Memory and Extended Core Storage. The Extended Core Storage has four independent access trunks, enabling it to be shared by up to four Control Data 6000 Series computer systems (or 6411 Augmented Input-Output Buffer and Control devices) for multiprocessing purposes. As in the other Control Data 6000 Series core storage units, there are no provisions for parity checking in the Extended Core Storage. Software checking schemes are recommended to verify the validity 11/65 2,097,152 80 Cycle Time, in Microseconds Peak Transfer Rate, Millions of Characters per Second .13 6400 and 6600 In summary, the Extended Core Storage is capable of transferring blocks of data at rates that are more than ten times faster than those of any commerciallyavailable disc or drum storage device or any previously-announced competitive mass core storage device. The price of the Extended Core Storage is about one-tenth that of the 6000 Series Central Memory units, on a character-for-character basis. (See Section 260:221 for detailed pricing information.) The extremely high data transfer rates of the Extended Core Storage, combined with its comparatively low cost, make the use of this unit worthy of serious consideration by all prospective and current users of the Control Data 6000 Series. .14 Availability: . . . . • . . ? .15 First Delivery: . . . . . 1966. .16 Reserved Storage: .•• none. \ ·2 PHYSICAL FORM • 21 Storage Medium: .•.• magnetic core. · 23 Storage Phenomenon: . direction of magnetization. · 24 Recording Permanence .241 Data erasable by instructions: . . . . . . yes. · 242 Data regenerated constantly: . . . . . . . no. .243 Data volatile: . . . . . . no. .244 Data permanent: .•.. no. .245 Storage changeable: .. no. .25 Data Volume per Bank (6400 and 6600) A ,/ 480-bit words: ....•. 16,384. Characters: . . . . . • . 1,310,720. AUERBACH ~ (Contd.) 260:043. 250 INTERNAL STORAGE: EXTENDED CORE STORAGE .25 Data Volume per Bank (6800) .5 ACCESS TIMING 960-bit words: ••..•. 8,192. Characters: . . . . . . . 1,310,720. . 52 Simultaneous Operations: •.•••....•• up to 4 memory banks can -transfer data simultaneously. .53 Access Time Parameters and Variations .26 Banks per Physical Unit: . . • . . . . . . . . up to 16 per "star." · 27 Interleaving Levels: .• one per bank, to a maximum of four levels. · 28 Access Technique: ... coincident current. · 29 Potential Transfer Rates · 292 Peak data rates (6400, 6600) Cycle time: . . . . . . 3.2 ,""sec per 480-bit memory-bank word. Unit of data: . . • . . . 60-bit computer word. Conversion factor: .. 8 computer words per memory-bank word. Gain factor: " •••• up to 4 banks can be accessed simultaneously. Data rate: ••.•..•. 2.5 million computer words/sec/bank. Compound data rate: ..•.••.•.• up to 10 million words/sec. Peak data rates (6800) Cycle time: .•.•... 1. 6 ,""sec per 960-bit memory-bank word. Unit of data: . . . . . . 60-bit computer word. Conversion factor: •• 16 computer words per memory-bank word. Gain factor: ..•••. up to 4 banks can be accessed simultaneously. Data rate: . . . . . . • . 10 million computer words/ sec/bank. Compound data rate:. up to 40 million words/sec. . 531 For uniform access (6400, 6600) Access time: .••••• 1.6 ,""sec. Cycle time: •••••.• 3.2 ,""sec. For data unit of: ••• 480 bits. For uniform access (6800) Access time: •••••• 0.8 ,""sec. Cycle time: .•••••. 1.6 ,""sec. For data unit of: ••• 960 bits. •6 CHANGEABLE STORAGE: •••••.• none. .7 PERFORMANCE .72 Transfer Load Size With Central Memory: ••.•••• 1 to 131K 60-bit words. .73 .8 .3 DATA CAPACITY .31 Module and System Sizes: ••••••••• see table below. .32 Rules for Combining Modules: ..•• modules of 6400/6600 and 6800 Extended Core Storage cannot be intermixed in the same system. Effective Transfer Rate (60-bit words/sec) With 6400 and 6600 computer systems: .. 8 million (32K systems). 10 million (65K, 131K systems). With 6800 computer systems: .••.•••• 32 million (32K systems). 40 million (65K, 131K systems). ERRORS, CHECKS, AND ACTION Check or Interlock .4 Receipt of data: Recording of data: Recovery of data: Dispatch of data: Timing conflicts: Reference to protected area: CONTROLLER: .••.. no separate controller. • 31 no check. no check. no check. no check. not possible. program boundary check data transfer is aborted. Module and System Sizes Minimum Storage Identity: Words (60-bit): Characters: Banks: © Bank 131,072 1. 3 million Bay 524,288 5.2 million 1 4 Maximum Storage Star 2,097,152 21 million 16 8 Stars 16,777,216 168 million 128 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 260:044. 100 CONTROL DATA 6000 SERIES INTERNAL STORAGE 6603 DISK FILE INTERNAL STORAGE: 6603 DISK FILE .1 GENERAL · 11 Identity: . . . . . • . . . . Control Data 6603 Disk File. · 12 Basic Use: ...••..• auxiliary storage and System Disk. · 13 Description In the outer two zones of each disc surface, the 256 recording tracks are divided into 128 sectors. The 256 recording tracks of the inner two zones are divided into 100 sectors. Physically, each sector on a particular track holds 351 bits of information. Logically, however, a sector spreads over the 12 corresponding tracks of 12 disc surfaces, since these 12 tracks are read and recorded simultaneously. Therefore, a logical sector consists of 351 12-bit words. The first four 12-bit words of each sector are used for synchronization purposes and the last word is used for parity checking, so the data capacity of each sector is 346 twelve-bit words. The Control Data 6603 Disk File is a singlemodule, high-performance disc storage unit that can be used with Control Data 6000 Series computer systems as the System Disk. The 6603 is a Bryant disc file that uses 14 non-removable discs and is capable of storing up to 80 million 6-bit characters. Parallel accessing of 12 disc surfaces contributes to transfer rates that range between 1. 0 and 1. 3 million characters per second. Up to eight 6603 Disk Files can be connected to a 6000 Series computer system. Each of the 24 disc recording surfaces is provided with four read-write heads, one per zone, attached to a common arm. Each arm assembly is in turn attached to a common head-positioning axis that moves all of the arms in unison. In anyone position of the comb-like multiple-arm access mechanism, approximately 88,500 characters can be read or recorded on the outer zones using the 12-head parallel accessing method. The 6603 Disk File has a total of 8 such 12-head groups, each of which can alternately access 88,500 (outer zones) or 69,200 (inner zones) characters without any arm movement. As each head-group completes its reading or recording operation, a "revolution mark" on the disc is sensed. At this point another headgroup can be specified to continue the data transfer operation. As a result, approximately 631,104 characters can be accessed while the access mechanism is in anyone position, with head-group switching being performed electronically. The System Disk is an integral part of every Control Data 6000 Series computer system. Its use is normally directed and regulated exclusively by SIPROS, the 6000 Series operating system, although direct user access to the unit is also possible. The principal functions of the System Disk include the following: • To accumulate portions of a program's output when the program is being processed periodically, as in a multiprogramming or timesharing environment; • To store the input job stack, providing Central Memory and/or Extended Core Storage with quick access to scheduled programs and their data; • To gather input data from relatively slow input devices, and to transfer this information as complete data sets to core storage for noninterrupted processing; • To store the results of program compilations when these programs are not scheduled for immediate execution; • To hold in residence the 6000 Series system library; and • To provide SIPROS with the generalized services of random-access, intermediate storage. Each of the 24 usable disc surfaces has a storage capacity of approximately 20 million bits of information, spread throughout 58,368 346-bit physical sectors. Since all reading and writing operations transfer 12 bits in parallel, the 6603 Disk File's data word is considered to be 12 bits in length. Each logical sector, consisting of 346 twelve-bit words, is individually addressable. The total data storage capacity of a 6603 Disk File consists of 116,736 addressable sectors that contain 40,390,656 twelve-bit words. Data records can be of variable length and do not need to coincide with sector boundaries. The 6603's synchronization device inserts four words of zeros at the beginning of each record and a parity word at the end of each record. The 12-bit parity word is read during every read operation and is compared to a newly-generated parity word to ensure the validity of data transfers. However, the Disk File does not automatically regenerate and compare the parity word after a write operation. The Control Data 6607 and 6608 Disk Files (described in the following report section, 260:045) can also be used as the System Disk in a 6000 Series computer system. The 6607 and 6608, which are manufactured by Control Data Corporation, are expected to supersede the Bryant-made 6603 in 6000 Series systems within the near future. The 6603 Disk File contains 14 discs, each coated on both sides with a magnetic-oxide material. Twenty-four of the twenty-eight disc surfaces are used for recording data, two are used for timing purposes, and two are used for spares. Each disc surface is divided into four concentric zones, and each zone is further divided into 128 concentric recording tracks. 11/65 The total time required to read or write data consists of the time required to position the access arm to the selected track, the time required to wait for the selected sector on the track, and the time required to transfer the data. Whenever a IA AUERBACH ~ (Contd.) 260:044.130 INTERNAL STORAGE: 6603 DISK FILE .13 . 14 Description (Contd.) .29 different track is selected, a fixed track-positioning delay of 120 milliseconds occurs, allowing any mechanical vibrations to cease before data transmission starts. The discs revolve at a rate of 900 to 950 rpm, or one revolution every 63 to 66 millisecohds, so the average rotational delay is about 33 milliseconds. The total average access time for data accessing that requires arm movement is therefore 153 milliseconds. In situations that do not require head positioning, the significant timing considerations are the time to switch electronically between the eight read-write head-groups (0 to 66 milliseconds), and the rotational delay (0 to 66 milliseconds). Head-group switching time is overlapped with track positioning delay when access arm movement is required. .291 Peak bit rates Cycling rates: . . . . . Bit rate per track: .. .292 Peak data rates Unit of data: . . • . . . Conversion factor: .. Gain factor: ..•.•. Loss factor: . . . . . . Data rate Outer zones: .•... Inner zones: . . . . . . 15 First Delivery: .•... 1965. . 16 Reserved Storage Purpose '- Number of locations .2 PHYSICAL FORM . 21 Storage Medium: . . . . disc . .22 Physical Dimensions . 23 Storage Phenomenon: . direction of magnetization . .24 Recording Permanence .241 Data erasable by instructions: •..•.• .242 Data regenerated constantly: .. . . . . . . 243 Data volatile: . • . . . . .244 Data permanent: ..•. • 245 Storage changeable: .. yes. no. no . no. no . Data Volume per Band of 12 Tracks Outer Zones Inner Zones Words: ...••.•.••. 44,288 Characters: ..••••• 88,576 Instructions: • . . . . . . 44,288 34,600 69,200 34,600 .26 Bands per Physical Unit: . . . . . . . . • . . 1,024 800 .27 Interleaving Levels: .• 1 (i. e., no interleaving when reading or recording is performed under control of standard software). ( .28 Module and System Sizes 6603. 14 . 40.4 million. 80.8 million . 40.4 million . 1. Rules for Combining Modules: .••.•.•. up to eight 6603 Disk Files per system. .4 CONTROLLER: . . . . . no independent controller. .5 ACCESS TIMING .51 Arrangement of Heads Heads per stack: ..• Stacks per system: .. Stacks per yoke: ... Yokes per system: .. .512 Stack movement: ...• 12. 8. 8. 1. vertically across the face of 14 recording surfaces. .513 Stacks that can access any particular location: . . . • • . . . . 1. .514 Accessible locations: By single stack With no movement: . outer zones: 44,288 12-hit words. inner zones: 34,600 12-bit words. With all movement:. outer zones: 5,668,864 12-bit words. inner zones: 4,428,800 12-bit words. By all stacks With no movement: • 315,552 words per system. .52 Simultaneous Operations: . . . . . . . only one operation at a time per 6603 Disk File. .53 Access Time Parameters and Variations Variation Track positioning: 0 to 120 Head-group selection: 0 to 66 msec (overlapped with track positioning time) Sector positioning: 0 to 66 msec Data transfer: 0.5 to 65 msec Total: 0.5 to 251msec Possible starting stage yes. © 671,051 12-bit words/sec. 524,246 12-bit words/sec. .32 moving heads. yes. yes. no. word. 12 bits/word. 12 tracks/band. none (no interleaving). DATA CAPACITY Identity: . . . . . . • . . . Discs: . . . . . . . . . . . Words (12-bit): . . . . . Characters: . . . . . • . Instructions: . . . . . . . Modules: . . . . . . . . . Access Techniques .281 Reading and recording method: . • • • . . . . . .282 Type of access Description of stage Track positioning: .• Head-group selection: ..••... Sector positioning: .. Data transfer: .•••. 900 to 950 rpm. 700,000 bits/sec/track. .511 Number of stacks - .222 Disc Diameter: • . • . • . • . ? Thickness or length: • ? Number on shaft: ..• 14. .25 .31 Availability: .••.... 6 months. Synchronization: ..•. 4 words/sector. Parity: . . • . • • . . . . . 1 word/sector. Head-group switching: 351 words/track. \ .3 Potential Transfer Rates .6 Example 120 msec. 33 msec. 33 msec. 0.5 msec. 153.5msec. CHANGEABLE STORAGE: ...•••. none. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 CONTROL DATA 6000 SERIES 260:044. 700 .75 Read-Only Reference Cycle Rate .7 PERFORMANCE .72 Transfer Load Size: .. 1 to 44,288 12-bit words. 6. 7 references/sec, based on random reference to a record. .73 Effective Transfer Rate 15 references/sec, based on reference without head repositioning. With outer zone sectors: •••...•.. 671,051 12-bit words/sec. With inner zone sectors: . • . . . . . . . 524,246 12-bit words/sec .8 (exclusive of access times). .74 Update Cycle Rate 3.6 references/sec, based on random reference to a record, updating and read-verifying it. 4.0 references/sec, based on random reference to a record, updating it, but not read-verifying. 30 references/sec, based on reference without head repositioning or head-group selection. ERRORS, CHECKS, AND ACTION Check or Interlock prevented by software. none. Recovery of data: 5.0 references/sec, based on updating and readverifying a record without head repositioning. Action Error Invalid address: Receipt of data: Recording of data: Dispatch of data: .~.. generate and record 12-bit parity word. regenerate and com- set testable pare parity word indicator. none. / ./ 11/65 A AUERBACH • 260:045.100 CONTROL DATA 6000 SERIES INTERNAL STORAGE 6607/6608 DISK FILE INTERNAL STORAGE: 6607/6608 DISK FILE SYSTEMS .1 GENERAL . 11 Identity: . . . . 6607 Disk File System. 6608 Disk File System. 807 Disk File. 808 Disk File. .12 Basic Use: auxiliary storage and System Disk. .13 Description The 807 Disk File contains 36 aluminum diSCS, 26 inches in diameter, coated on both sides with a magnetic-oxide material. The 808 Disk File contains 72 discs of the same type. Four 807 discs are not available for recording data, but are used for timing purposes and for spares. Eight 808 discs are Similarly unavailable. Therefore, 64 and 128 disc surfaces are available for storing data in the 807 and 808 Disk Files, respectively. The Control Data 6607 and 6608 Disk File Systems provide large-capacity, high-performance. disc storage for the Control Data 6000 Series computer systems. Announced in September 1965, the 6607/ 6608 Disk Systems offer considerable performance improvements over the 6603 Disk File (described in Section 260:044), and, like the 6603, can be used as System Disk units for the 6000 Series computer systems. The 6607/6608 Disk Systems are manufactured by Control Data Corporation. Each disc surface is divided into 192 concentric storage tracks, and each track is segmented into 16 sectors. Up to 2,560 data bits of information can be stored in each sector, or 7. 8 million bits per surface. Reading and recording of data are performed simultaneously on 12 corresponding tracks of 12 different disc surfaces, establishing the basic unit of data as a 12-bit word. Thus, each access to a selected disc sector makes available 2,560 twelve-bit words or 5,120 characters. The 6607/6608 Disk Files can store up to 168 million characters of information and can transfer data at a rate of 1. 67 million characters per second. More than 5 million characters can be accessed in anyone position of the access mechanism via electronic head-switching, and the maximum length of time required to position the read/write access arms to any selected data track is 100 milliseconds. Up to eight independently-operating 6607 or 6608 Disk File Systems can be connected to a Control Data 6000 Series computer system. The Control Data 807/808 Disk Files are the basic components of the 6607/6608 Disk File Systems. In addition to the 807/808 components, the Disk Systems also include built-in dual-channel controllers. The 6607 system consists of an 807 Disk File and a time-shared, dual-channel controller. The 6608 consists of an 808 Disk File, a timeshared, dual-channel controller, and (optionally) a second dual-channel controller to provide simultaneous read/write operations on each half of the 808 Disk File. , I The basic structure of the 807 Disk File consists of two vertical shaft assemblies, each controlling 18 non-removable discs. The discs on both shafts are accessed by a single hydraulic actuator assembly that contains two grolIPs (or "combs") of 16 access arms. The access arms move in unison across the surfaces of the discs on each shaft. The requested positioning of one group of access arms is automatically countered by diametrically-opposed movement of the other group of arms in order to minimimize mass imbalance and reduce vibrations. The 808 Disk File, used exclusively in the 6608 Disk File System, also consists of two vertical shaft assemblies, but with twice the number of discs and two independently-operating actuator arms. Thus, the 808 Disk File can be considered to be two 807 Disk Files, physically and logically integrated into a Single, dual-functioning unit. The newly-designed actuator assembly controls the accessing of data on 64 disc surfaces. Each of the actuator's two combs contains 16 access arms, and each arm contains two 6-head stacks of read-write heads mounted back-to-back in order to provide simultaneous access to corresponding tracks of an upper and lower disc surface. The six-head stack can access six adjacent tracks per surface without requiring arm movement. Since each disc surface contains 192 data tracks, the 6-head access arms, mOving in unison, need to move to only 32 discrete positions per surface to provide access to all data stored on each surface of the entire file. In anyone of the 32 positions of the actuator assembly's duplex, reactively-functioning, comblike access mechanisms, more than 2.625 million characters (5.25 million in the 808 Disk File) are accessible via electronic head-switching. The total storage capacity of the 807 Disk File is approximately 84 million characters. The capacity of the 808 Disk File, which uses twice the number of discs and a second actuator assembly, is approximately 168 million characters. The 807/808 Disk Files provide fast random access to any part of the file. If the addressed sector is not among the 16.4 or 32.8 thousand sectors that are rotating directly under the read-write heads at any time, repositioning of the access arms is required. In this Situation, any 5, 120-character sector can be accessed in between 34 and 152. 5 milliseconds. Access arm positioning requires from 34 to 100 milliseconds, and the disc rotational delay, at 1140 disc revolutions per minute, is a maximum of 52.5 milliseconds. The comparatively short access arm positioning time is made possible by reducing the number of discrete head positions per track and by minimizing the settling time after arm pOSitioning by means of the self-balancing actuator assembly. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 260:045, 130 ,13 CONTROL DATA 6000 SERIES Description (Contd, ) . 28 The maximum data recording density on the 807/808 discs is 850 bits per inch. Reading and recording 12 bits in parallel, the 807/808 Disk Files produce data transfer rates of 1. 67 million characters per second. .281 Reading and recording method: . • . . . . • . moving heads. .283 Type of access Description of stage Possible starting stage The read-write heads are positioned to "fly" at approximately O. 0004 inch from the disc surface. If for any reason the disc rotational speed drops below a certain level, the read-write heads are automatically retracted. . 14 Access Techniques Access arm positioning: Head-group selection: Rotational delay: Data transfer: .29 Potential Transfer Rates The smallest record that can be written is the size of one logical sector, or 2,560 12-bit words. If a program calls for fewer words to be written, the remainder of the sector is filled with zeros. After each sector is written, an automatic 12-bit parity word is generated and written as the sector's 2, 561st word. Subsequent Disk File read instructions automatically regenerate the parity word and compare it to the original. Parity errors 'are indicated by setting a specific bit in the status word that the Disk File controller constructs for testing by the 6000 Series Peripheral and Control Processors. .291 Peak bit rates Cycling rates: ...• BitS/inch/track: .. Bit rate per track: . .292 Peak data rates Unit of data: . . . . . Conversion factor: . Gain factor: . Loss factor: ..•. Data rate: . . . . . . Compound data rate: . . . . . . . . . Each 807 Disk File that is used with a Control Data 6000 Series computer system is capable of performing only one read, write, or seek operation at any one time. However, the 808 Disk File can be supplied with an optional controller that permits read/write/seek overlap on each half of the Disk File. .3 DATA CAPACITY .31 Module and System Sizes Discs: Words (12-bit): Characters: Instructions: Modules: Availability: . • . . . . . ? . 15 First Delivery: . • . . . third quarter, 1966 . .16 Reserved Storage Purpose Number of locations Synchronization: Parity: 127 12-bit words. 1 12-bit word. CONTROLLER: . . .. Storage Medium: . . . . magnetic discs. .5 ACCESS TIMING Physical Dimensions .51 Arrang.ement of Heads Recording Permanence . 241 Data erasable by instructions: . . . . . . yes. .242 Data regenerated constantly: . . . . . . . no. .243 Data volatile: . • . . . . no. .244 Data permanent: . . . . no. .245 Storage changeable: .. no. . 25 Data Volume per Band of 12 Tracks Words: . • . . . . . . . . . 40,960 12-bit words. Characters: . . • . . . . 81, 920 characters. Instructions: . • • . . . . 40,960 12-bit instructions. . 26 Bands per Physical Unit: . . . . . . . . . . . 192. .27 Interleaving Levels: .. 1 (1. e., no interleaving). 808 File 64. 84 million. 168 million. 84 million . 1. .4 .22 . 24 1,666,667 12-bit words/sec (808 Disk File only). Rules for Combining Modules: . . • . . . . up to eight 807 or 808 Disk Files per system. .21 Storage Phenomenon: . direction of magnetization. word. 12 bits/word. 12 tracks/band. none (no interleaving). 833,333 12-bit words/sec. .32 PHYSICAL FORM . 23 1140 rpm. 850 bits/inch maximum. 833,333 bits/sec/track. 807 File 32 42 million 84 million 42 million 1 .2 .222 DiscDiameter: . . . . . . . . 26 inches. Number on shaft: . . . 36. yes. yes. yes. no. controller is an integral part of 6607/6608 Disk File Systems. .511 Number of stacks 807 808 Heads per stack: .. 6 6. Stacks per system: . 64 128. Stacks per yoke: .. 64 128 . Yokes per system: . 1 2. . 512 Stack movement: . . . horizontally across the disc surfaces . .513 Stacks that can access any particular location: . . . . • . . . . . 1. .514 Accessible locations (by all stacks, with no arm movement):. 2.625 (807) or 5.25 (808) million characters per Disk File. .52 Simultaneous Operations: • . . • . . . . . only one operation at a time in the 807 Disk File; two simultaneous operations available with optional equipment in the 808 Disk File. (Contd.) 11/65 A AUERBACH • 260:045. 530 INTERNAL STORAGE: 6607/6608 DISK FILE .53 \ Access Time Parameters and Variations Stage Access arm positioning: Example 5.0 references/second, based on random reference to a record of 2,560 12-bit words, updating it, and read-verifying it. 0, or 34 to 100 msec 100 msec. 6.7 references/second, based on random reference to a record of 2,560 12-bit words, updating it, but not read-verifying it. 7.5 references/second, based on updating this record and read-verifying it, but without head repositioning. .75 10.4 references/second, based on random reference to a record of 2,560 12-bit words. 3.0 msec. 129.3 msec. 34.1 references/second, based on reference to a record of 2,560 12-bit words without head positioning. CHANGEABLE STORAGE: .••.••. none. PERFORMANCE: .72 Transfer Load Size: .. 2,560 to 40, 956 12-bit words. .8 ERRORS, CHECKS, AND ACTION Check or Interlock Error Invalid address: Receipt of data: Recording of data: Recovery of data: Effective Transfer Rate: . .... .... . 833,333 12-bit words/sec, exclusive of access times. \ Read-Only Reference Cycle Rate 26.3 msec. .7 .73 Update Cycle Rate Variation Head-group selection (time is overlapped with arm positioning time): Rotational deo to 52.5 msec lay: Data trans3. 0 to 48 msec fer: 3. 0 to 200. 5 msec Total: .6 .74 Dispatch of data: Action prevented by software. none. generate and record 12-bit parity word. regenerate and com- set testable pare parity word indicator . none. ,, (" © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 260:046. 100 &. ST"'''' IA\EDP - CONTROL DATA 6000 SERIES INTERNAL STORAGE 850 SERIES DISK DRIVES AUERBACH REPORTS INTERNAL STORAGE: 850 SERIES DISK DRIVES .1 · 11 · 12 · 13 disc surface. The ten data tracks that can be accessed when the ten-armed access mechanism is in any given position are referred to as a "cylinder." The total number of characters that can be stored per cylinder and accessed by electronic switching, without access arm positioning, is 20,000 characters in Model 852 and 40, 960 characters in Models 853 and 854. When access arm positioning is required to read or record on a selected track, the access time ranges from 30 to 145 milliseconds, assuming that the Direct Seek feature is installed. Without Direct Seek, the access arm moves to the selected track only after first returning to a starting or "home" position, and access times will be significantly longer. Random record access time is also affected by the rotational delay, or the time required for the addressed record to pass under the read-write head once the proper track has been selected. This rotational delay varies from 0 to 40 milliseconds in the 852 Disk Storage Drive, and from 0 to 25 milliseconds in the 853 and 854 Disk Storage Drives. The total update cycle time to read a randomly-addressed 100-character record, update it, and perform a write-check operation is 159 milliseconds in Model 852. This same random update and check operation can be performed in 120 milliseconds in Models 853 and 854. The principal performance difference between the 852 and 853 Disk Storage Drives lies in the disc rotational speed. The discs of Model 852 rotate at 1500 rpm, and those of Model 853 rotate at 2400 rpm. The principal difference between the 853 and 854 Disk Storage Drives lies in the storage capacity of each unit's disc surfaces. Model 853's disc surfaces contain 100 data tracks each, whereas Model GENERAL Identity: . • . . . . . . 852 Disk Storage Drive. 853 Disk Storage Drive. 854 Disk Storage Drive. Basic Use: . . . . . . random-access auxiliary storage. Description The Control Data 850 Series Disk Storage Drives, announced in September 1965, provide Control Data 3000 and 6000 Series users with randomaccess "Disk Pack" storage facilities. On-line data capacities per Disk Storage Drive range from 2 to 8.2 million characters, and access times vary from 30 to 145 milliseconds. The Model 852 Disk Storage Drive uses the same data recording mode as the IBM 1311 Disk Storage Drive, and their respective Disk Packs are functionally interchangeable. The 852, 853, and 854 Disk Storage Drives each hold a single removable Disk Pack that consists of 6 discs. Ten of the 12 available disc surfaces are used for recording data. There are 100 data tracks on each disc surface in Models 852 and 853, and 200 data tracks on each Model 854 disc surface. The total storage capacity of Model 852 is 2 million or 2. 98 million characters. Model 853 can store up to 4. 1 million characters, and Model 854, with twice as many data recording tracks as Model 853, can store up to 8.2 million characters. Table I compares the characteristics of the three models of the 850 Series Disk Storage Drives. Each 850 Series Disk Storage Drive is serviced by a single comb-like access mechanism that moves horizontally between the disc surfaces. Each of the ten access arms that make up the access mechanism contains a single dual-gap read-write head to service all 100 tracks (or 200 in Model 854) of one TABLE I: CHARACTERISTICS OF CONTROL DATA 850 SERIES DISK STORAGE DRIVES MODEL NUMBER Storage Capacity per Pack (millions of characters) Disc s per Pack Recording Surfaces per Pack Tracks per Disc Surface Sectors per Track Characters per Sector 11/65 852 853 2.0 (Sector Mode) 2. 98 (Track Mode) 4.09 854 8.19 6 6 6 10 10 10 100 100 100 20 16 16 100 256 256 Characters Stored per Track 2, 000 (Sector Mode) 2,980 (Track Mode) 4,096 4,096 Disc Rotation Speed (rpm) 1,500 2,400 2,400 Rotational Delay (msec) o to 40 o to Access Time with Direct Seek (msec) 30 to 145 30 to 145 30 to 145 Data Rate (char Isec) 77,730 208,333 208,333 /fa AUERBACH ~ 25 o to 25 (Contd.) INTERNAL STORAGE: 850 SERIES DISK DRIVES • 13 Description (Contd.) .27 Interleaving Levels: •• 1 (i. e., no interleaving) • 854 has 200 data tracks per surface. A total of up to 4.096 million characters can be stored on-line in each 853 Disk Storage Drive, and up to 8. 192 million characters in each 854 Disk Storage Drive. • 28 Access Techniques The 852 Disk Storage Drive can store up to 2 million 7bit characters when recording is performed in the Sector Mode. In this mode, each track is divided into 20 sectors, and each sector holds a 5-character address and up to 100 7-bit alphameric characters of data. When data is recorded in the Full-Track Mode (i. e., with each record occupying a full data track), each track can hold 2,980 seven-bit characters, for a total drive capacity of 2. 98 million characters. The 852 Disk Storage Drive records data in the NRZI (Non-Return to Zero) data recording mode. A parity bit is generated and recorded with each character of data. The 853 and 854 Disk Storage Drives use the "double-frequency" recording technique and record data only in the Sector Mode - never in the FullTrack Mode. Normally each read and write operation transfers a full sector of data (i. e., 256 six-bit characters). However, if reading and recording are selected to be performed in the End of Record Mode, these operations can be terminated prior to the end of the associated sector by means of an End of Record mark. A 16-bit check character is generated with every record that is recorded. This check character is regenerated and compared with the recorded version each time the record is read; unequal comparison results in a data transmission error signal. .14 260:046.130 Availability: • • • . . . . ? · 15 First Delivery: • . . . . 3rd quarter, 1966. • 16 Reserved Storage: . . . none. •2 PHYSICAL FORM · 21 Storage Medium: . . . • multiple magnetic discs. · 22 Physical Dimensions .281 Reading and recording method: • . . • . • . . • magnetic heads which move horizontally in unison on a comb-like access arm mechanism. .283 Type of access Description of stage Possible starting stage Move heads to selected track (cylinder): •.••••••. if new cylinder is selected. Wait for beginning of selected track: .. if same cylinder was previously selected. .29 Model 852 Cycling rate: . . . 1500 rpm. Bits/inch/ track: . . . . . • 988 bpi max. Bit rate per track: . . . . . . 699, 530 bits/sec/ track .292 Peak data rates Unit of data: . . . character Conversion factor: . . . . . . 7 bits per character (6 plus parity) Data rate: . . . . . 77, 730 characters per second DATA CAPACITY .3 .31 o \, 24 Recording Performance .241 Data erasable by instructions: .•••.• yes. · 242 Data regenerated constantly: 0 0 0 0 0 • 0 no. . 243 Data volatile: 0 ••••• no. o 244 Data permanent: •••• no . . 245 Storage changeable: .. yes, see Paragraph 06. 025 \ .26 852 variable 2,000 or 2,980 2,000 or 2,980 variable 20 or 1 853/854 variable. 4,096. 4,096. variable. 16. Bands per Physical Unit: •. 0 ••••••.. Models 852 and 853: 100 per disc surface. Model 854: 200 per disc surface. 1105 bpi max. 1,250,000 bits/ sec/track. character. 6 bits per character. 208,333 characters per second. 852 6 1, 000 100 variable 2,000,000 or 2,980,000 1 853 6 1,000 200 variable 4,096,000 854 6 2,000 200 variable 8,192,000 1 1 .32 Rules for Combining Modules: ••••.••• up to 8 Model 852, 853, or 854 Disk Storage Drives can be connected to a basic 6000 Series computer system • .4 CONTROLLER .41 .5 Identity: •••••••••• controller is an integral part of each 852 Disk Storage Drive. 3234 Disk Storage Controller services up to 8 Model 853 and/or 854 Disk Storage Drives. ACCESS TIMING .51 Arrangement of Heads Data Volume per Band of 1 Track Words .••. 0 0 . 0 ••. Characters: •.••.••. Digits: .•••.••.••. Instructions: . . . . • • . Sectors: .•.••••••• i Modules: Storage Phenomenon: 0 direction of magnetization. Models 853/854 2400 rpm. Module and System Sizes Model: Discs: Tracks: Cylinders: Words: Characters: .222 DiscDiameter: . • • . . • . . 14 inches. Number on shaft: . . . 6. .23 Potential Transfer Rates .291 Peak bit rates - .511 Number of stacks Heads per stack: Stacks per drive: Stacks per yoke: Yokes per drive: © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 1. 10. 10. 1. 11/65 CONTROL DATA 6000 SERIES 260:046. 512 "512 Stack movement: .••. horizontally across disc surface to one of 100 (Models 852 and 853) or 200 (Model 854) tracks. • 513 Stacks that can access any particular location: • . •. . 1• . 514 Accessible locations: By single stack With no movement:. 1 track. With all movement: 100 tracks (852 and 853); 200 tracks (854). By all stacks With no movement: . 10 tracks per drive. .52 · 53 PERFORMANCE . 72 Transfer Load Size Single track: Cylinder: Cylinder mode, I-way transfer: . . . . . . . 69,840 char/sec* 193,750 char/sec* * .74 CHANGEABLE STORAGE Cartridges (Disk Packs) .611 Cartridge capacity . Model 852: . Model 853: .. Model 854: .. .612 Cartridges per module: . . . . .613 Interchangeable: . . . . Based on random accessing and transferring of one cylinder (see Paragraph. 7 2 above) of data. Update Cycle Rate With no overlapping of seektimes: . . . 6.3 (Model 852) or 8.3 (Models 853/854) references/second. With maximum overlapping of seek times: 9. 8 (Model 852) or 15. 8 (Models 853/854) references/second . Access Time Parameters and Variations: . . . . see Table II. . 61 852 853/854 1 to 2,000 chars. 1 to 4,096 chars • up t020, 000 up to 40,960 chars. chars. Effective Transfer Rate .73 Simultaneous Operations: . . . . . . . a read, write, or seek operation in any Storage Drive can be overlapped with a seek operation in any other Drive. The Seek Overlap feature is standard on all models. .6 · 62 .7 Note: Based on random accessing of one 100character record, and reading, updating, and rereading for checking purposes • 2,980,000 characters. 4,096,000 characters. 8, 192,000 characters. .75 1. yes, between all Disk Storage Drives of the same model; Model 852 Disk Packs can also be interchanged with the IBM 1316 Disk Packs used with IBM 1311 Disk Storage Drives. Note: Based on random accessing and reading of one 100-character record, with no updating or rewriting. Loading Convenience .621 Possible loading While computing system is in use: . . . . . . . yes. While storage system is in use: . . . • . • . yes, if the particular Disk Storage Drive is not being addressed. · 622 Method of loading: ..• operator. · 623 Approximate change time: . . . • • . . 1 minute. · 624 Bulk loading: .• no; only one cartridge of 6 discs is loaded at anyone time. Read-Only Reference Cycle Rate With no overlapping of seek times: . . . . . . . 12.7 (Model 852) or 14. 1 (Models 853/854) references/ second. With maximum overlapping of seek times: •••••••••• 47.1 (Model 852) or 76.9 (Models 853/854) references/ second. .8 ERRORS, CHECKS, AND ACTION Error Check or Interlock Invalid address: prevented by software. none. parity, cyclic code parity, cyclic code none. Receipt of data: Recording of data: Recovery of data: Dispatch of data: Action set testable indicator. set testable indicator. TABLE II: VARIATIONS IN ACCESS TIME (USING DIRECT SEEK FEATURE) Model 852 Variation, Average, msec msec Models 853 and 854 Variation, Average, msec msec 30 to 145 57.5 30 to 145 Wait for beginning of selected track: o to 40 20. o to 25 12.5 Transfer data: 24 per track 24. 23.1 per track 23.1 Stage Move head to selected track (cylinder): Total: 11/65 101.5 fA AUERBACH • 57.5 -93.1 - / 260:051. 100 --. 1. "'''''' CONTROL DATA 6000 SERIES CENTRAL PROCESSORS /&..EDP - AUERBACH RfPURTS CENTRAL PROCESSORS .1 GENERAL .11 Identity: . . . . . • • • . . 6400 Central Processor; 6600 Central Processor; 6800 Central Processor. .12 Description The central processor of a Control Data 6000 Series computer system is the largest and most powerful of the 11 processors included in every system. The central processor should not be confused with the 10 subsidiary Peripheral and Control Processors that are described in the 'following report sectioI)., 260:052. The central processor is a high-speed, parallel-functioning arithmetic, logical, and control device that can effectively share its operations between multiple programs concurrently residing in Central Memory or in the Extended Core Storage. Among the outstanding features of the 6000 Series central processor are the following: o Parallel execution of up to 10 arithmetic/logical operations. o Simultaneous accessing of up to 8 Central Memory locations, providing anticipated instruction access and operand preparation, and resulting in virtually no central processor delays caused by the need to await completion of Central Memoryaccesses. • An instruction stack of 8 words (up to 32 instructions), facilitating the look-back operations used in program looping. o Exchange Jump and Internal Jump facilities to switch control between central processor programs in less than 5 microseconds. Unlike typical central processors, the Control Data 6000 Series central processor can be almost exclusively engaged in performing high-speed, highlyproductive computations. Time-consuming inputoutput and data manipulation operations can be performed by the 10 Peripheral and Control Processors. If the peripheral processors should become overloaded, the central processor can be utilized to assist in the brute data processing. Three basic central processors are offered with the 6000 Series - a different processor for use with the 6400, 6600, and 6800 computer systems. The central processors have similar roles in their respective systems and are closely related in their hardware organization. The 6400 and 6600 central processors have the same clock-cycle time of 100 nanoseconds; the ultra-high-speed 6800 central processor has a clock-cycle time of 25 nanoseconds. ( \. The 6400 central processor can optionally function in parallel with another 6400 central processor, providing true multiprocessing facilities that include 12 independently-operating processors (2 central and 10 peripheral). However, the 6400 Central Proc- © essor has no instruction stack, nor can it execute more than one instruction at a time. The 6600 and 6800 central processors feature a high degree of processing simultaneity through the use of an eight-word instruction stack and 10 independent arithmetic-logical units. The result is effective overlapping of instruction access and execution. The principal difference between the 6600 and 6800 central processors lies in internal circuit performance: the 6800 can execute instructions approximately four times faster than the 6600 central processor. This report section describes the general functional characteristics on the three central processors available with the Control Data 6000 Series. Performance timings are not included in this section, since they vary among the processors. Instead, the central processor performance measurements are included in the Central Processor sections of the the individual subreports on the 6400, 6600, and 6800 computer systems, Sections 263:051, 264:051, and 265:051, respectively. . 121 Central Registers and Instruction Stack The central processor can be accessed by the Peripheral and Control Processors only through the Central Memory, and all accesses to Central Memory are performed through central registers. Instructions and operands are drawn from registers that are constantly being refilled from Central Memory in order to minimize central processor dependence on or delays from any other parts of the system. An eight-word instruction stack provides the central processor with the present instruction and the seven previous instruction words. Instruction words from Central Memory enter the bottom of the stack and push up the preceding instructions. Programs that branch back to an instruction in the previous stack registers can be contained entirely within the stack loop, minimizing the time expenditures for repeated accesses to the same instructions. In straight-line programs, only the bottom two stack registers are used, providing effective overlapping of instruction access. (In the 6400 central processor, the tworegister sequential buffer or stack is the only instruction stacking mechanism available. ) The 24 high-speed central registers also contribute to the high degree of overlap in instruction preparation and to the consequent speed of instruction execution. These registers act as buffers between the relatively slow Central Memory and the rapid processing units, supplying addresses and operands in anticipation of the central processor's needs. Eight of these registers (B or B-line) are 18-bit index registers, used to increment or decrement the contents of any of the 24 central registers. Eight registers (A) are used as 18-bit address registers, serving to address the five Read Central Memory and two Store Central Memory trunks. Eight 60-bit 1965 AUERBACH Corporation and AUERBACH Info, Inc, 11/65 CONTROL DATA 6000 SERIES 260:051. 121 enters the instruction stack and maintains a record of the current use of each of the central registers and functional units. The scoreboard determines logical dependencies between instructions and delays the execution of dependent instructions until required operands are made available from the execution of previous instructions. Thus, hardware protection is included to ensure that the automatic resequencing and parallel execution of instructions will not result in errors in logic. .121 Central Registers and Instruction Stack (Contd.) floating-point registers (X) are used as operand registers, with direct access to and from Central Memory. Any change in the A registers (caused by the arrival of a new instruction) implicitly causes the corresponding operand registers to be filled with the addressed data from Central Memory, or the results of some computational instruction to be stored in Central Memory. Since there are only eight central registers of each variety, and since the instructions address these registers directly, very short instruction lengths can result. For example, a three-address Add instruction can require only 15 bits, or one-fourth of an instruction word. Another central processor register, the P or Program Address Register, is an 18-bit counter that holds the address of the current instruction word. It is normally advanced by one when the entire instruction word has been executed. However, branch instructions set the P register to the address of the destination instruction, and the Exchange Jump instruction (see Paragraph. 123 below) sets the Program Address register to the first instruction of the next program to be executed within the Central Processor. .123 Instruction Format The Control Data 6000 Series central processors use two instruction formats: a 15-bit and a 30-bit format, which can be intermixed within a 60-bit instruction word. In most 15-bit formats, a 6-bit operation code specifies the functional unit and code, and three 3-bit addresses specify the operand registers where the operands can be found and the result stored. The 30-bit format consists of a 6-bit operation code, two 3-bit register addresses (where one operand can be found and the result stored), and an 18-bit second operand that is used directly. The diagrams below illustrate the two basic instruction formats. 3 ~~ . 122 Arithmetic Units The central registers of a Control Data 6000 Series central processor can collectively be considered as a control unit that effectively isolates the operations of the arithmetic unit. It is in this arithmetic unit that all central processor arithmetic and logical operations take place. The central processor of the 6400 computer system contains a unified three-address arithmetic unit that accepts each instruction in sequence and executes it in the same sequence. Instruction preparation is still overlapped with instruction execution, but only one instruction can be executed at any given time. By contrast, the central processors of the 6600 and 6800 computer systems utilize an arithmetic unit that consists of 10 fast functional units, each of which can perform computqtional and logical work concurrently with the others. Included among the independent functional units are two Increment units, two Multiply units, and one of each of the following: Add, Long Add, Divide, Shift, Boolean, and Branch. These functional units will accept and concurrently perform as many instr!lctions as there are appropriate functional units available, provided that there is no logical interdependence between the sequential instructions. The three-address structure of the functional units and the specific design of the 6000 Series instruction repertoire tend to increase the probability of logical independence of consecutive instructions. _3 _ m 3 __ 3 k i ~ f ~-L 3- L_3_ __ ~ 3 __ ~ 15 bits K 3 ~~ 3 __ ~ 18 ________________ 130 bits ~ f: ••. instruction type. m: ..• operation code. i: ... result operand register. j: ••• operand register or shift count. k: ... operand register or shift count. K: ..• literal operand. .124 Instruction Repertoire The central processor of the Control Data 6000 Series has an instruction set which is separate and distinct from that of the Peripheral and Control Processors. The central processor's instruction repertoire contains only 86 instructions, which fall into a mere nine logical classes. For example, the "SET" instruction class consists of 33 instructions that "set" one of the 24 operational registers to some particular value. The value is determined either from the contents of two of the operational registers or from a literal written into the instruction and the contents of one of the operational registers. In all cases, two values are used to determine the resultant final value to be inserted into the designated operational register. (One of the operational registers is permanently set to zero, however, so a programmer can easily use only a single value if he wishes.) The two values can be added together, or one can be subtracted from the other. The 33 different Set instructions are all written by using the same single-letter mnemonic code S (for Set), followed by three register names (or two register names and a literal) separated by a plus or a minus Sign. For example "SA3 B4 + 28" simply means "Set Register A3 to the contents of Register B4 plus 28." Similarly, "SA5 A5-B5" will decrement Register A5 by the contents of Register B5. Because all of the Set instructions use this format and the same one-letter mnemonic code, the programmer will soon view the 33 Set instructions as a single, highly versatile instruction. (Contd.) When the parallel operations of the multiple functional units are utilized, it is entirely possible that the instruction execution sequence will not follow the order in which the instructions were originally written on the coding sheet. If the execution of an instruction must be delayed because its operands are not immediately available, the next instruction(s) may be executed before or in parallel with the original instruction. A hardware device, called the "scoreboard," monitors each instruction as it t 1/65 m f A AUERBACH 260:051. 124 CENTRAL PROCESSORS .124 Instruction Repertoire (Contd.) Other classes of closely related instructions include the 8 Boolean operations, the 12 floatingpoint operations (add, subtract, multiply, and divide in either single-length unrounded, singlelength rounded, or double-length unrounded form) and the 18 jump instructions. This leaves only 15 other instructions that the programmer will need to remember in addition to these four general categories. The surprising simplicity of the Central Processor instruction code has a major effect on the operational efficiency of the Control Data 6000 Series systems, because it makes hand coding relatively easy to learn, easy to check, and easy to revise when necessary. With such a small instruction repertoire, attention is naturally focused on those instructions which are not present although they might be expected in such expensive systems. In considering these apparent omissions, it is important to consider the limited role of the Central Processor, and the type of work for which the Control Data 6000 Series systems were designed. Monitoring and executive functions and control of input-output operations are not expected to be performed by the Central Processor; these are functions of the Peripheral Processors exclusively. Th~ predominance of floating-point operations reflects the computational needs of the atomic energy industry, for which the system was originally designed. However, in view of Control Data's promotion of the system for commercial as well as scientific purposes, the absence of fixed-point multiplication and division instructions and of any radix conversion instructions is particularly conspicuous. Another noticeable lack in the instruction set is the absence of any mass data transfer instructions. Two words is the largest possible load that can be transferred during a single operation, and such an operation requires the execution of several Set instructions. Less obvious omissions are some of the more sophisticated instructions present in the slower· Control Data 3600 computer - including a very useful off-line search instruction which can search through core memory for either equality or threshold conditions, and which has unusually flexible incrementing capabilities. The provision of such facilities would have increased the cost of the 6000 Series systems, and on balance it was thought more desirable to handle operations such as data moving, searching, and radix conversion through a "brute force" approach which takes advantage of the high speeds of the Central Processors. i \. In their handling of the 60-bit floating-point operands, the 6000 Series central processors use the concepts of out-of-range numbers and indefinite operands. Special codes permit identification of operands in each of these categories. A'number which is out-of-range is simply a number whose binary exponent is greater than 1024 or less than -1024. An out-of-range number is treated as infinity or zero, as appropriate. Operations using ou~-of-range numbers as operands are specially handled. In some cases the results of such operations can continue to be used (e. g. ,cO+oo, which is defined as yielding 00). In other cases the results must be designated as "indefinite" operands (e. g. ,00 -cO, the result of which cannot be guessed). The use of any indefinite operand in an operation makes all the results of that operation indefinite also. A complete list of the 6000 Series central processor instruction set is presented in Section 260: 121 of this report. .125 Interrupt Facilities Since the Control Data 6000 Series central processor performs no input-ouwut or system control functions, its interrupt facilities are predictably simple. If an attempt is made to address a Central Memory location that is outside the range of the program being executed, the central processor is interrupted. This control is made possible by means of the memory protection scheme utilized by the central processor and Central Memory (see Section 260:041). Each program in Central Memory has an upper and lower boundary associated with it, and this range cannot be exceeded during the program's execution. During the floatingpoint arithmetic operations, interrupts also occur if the operands are out-of-range (i. e., exponent overflow) or if erroneous "indefinite" results are developed (see Paragraph. 124 above). Interrupt control is normally handled by the executive/monitor routines of SIPROS, the integrated operating system that resides in one of the Peripheral and Control Processors. The Exchange Jump facility, used by the Peripheral Processors to initiate and exchange programs in the central processor; causes external interruption of the central processor. The Peripheral and Control Processor, under the direction of SIPROS, interrupts the central processor and provides it with the initial address of a I6-word package in Central Memory. The Exchange Jump package contains such information as the initial contents of the 24 central registers, the program's upper and lower boundaries, and the current program address. The central processor enters this information in the appropriate registers and then stores the corresponding information from the interrupted central processor program in the same 16 words of Central Memory. Using the Exchange Jump facility, two programs can be exchanged in the central processor in less than five microseconds. This facility is a key factor in achieving efficient performance in multiprogramming and time-sharing operations. The Internal Jump instruction, a modified version of the Exchange Jump instruction, enables the central processor to interrupt itself or another central processor and then perform the same program-switching operation as that effected by Exchange Jump. Thus, the central processor has the ability to operate in two states: normal and monitor. The central processor's ability to initiate program switching without resorting to the executive control programs in the Peripheral Processor will considerably increase the efficiency of multiprogramming and time-sharing operations. Both the Internal Jump and Exchange Jump instructions are available in the 6400, 6600, and 6800 central processors. • 126 Inter-Series Compatibility Control Data states that any program written for and compiled on a specific member of the Control © 1965 AUERBACH Corporation and AUERBACH Info, Inc. If/65 CONTROL DATA 6000 SERIES 260:051. 126 • 126 Inter-Series Compatibility (Contd. ) Data 6000 Series will run on any other member of the Series without prior modifications. The sequence of instruction execution and the instruction execution times may vary between the Control Data 6400, 6600, and 6800 central processors, but the results of the program's operation will be the same. .2 PROCESSING FACILITIES .21 Operations and Operands OQeration and Variation .211 .212 .213 .214 • 215 • 216 • 217 • 218 .219 • 13 Availability: •••••.• 6400 - 6 months • 6600 - 6 months. 6800 - 1 year. . 14 First Delivery: ••••• 6400 - 1966. 6600 - 1965. 6800 - 1967. Provision Fixed point Add- subtract: automatic binary 60 bits Multiply: none. * Divide none. * Floating point Add- subtract: automatic binary 96 & 12 or 48 & 12 bits. Multiply: binary automatic 96 & 12 or 48 & 12 bits. Divide: binary automatic 96 & 12 or 48 & 12 bits. Boolean AND: binary automatic 60 bits. Inclusive OR: automatic binary 60 bits. Exclusive OR: automatic binary 60 bits. Comparison Numbers: automatic 18 or 60 bits. Absolute: none. Letters: 18 or 60 bits. automatic Mixed: 18 or 60 bits. automatic Collating sequence: A-Z, 0-9, blank, +, -, *, /, (,), # •. , •. Code translation: • • • • • none • Radix conversion: •••• none. Edit format: • • . • • • • • only between fixed and floating point formats. Table look-up:.. . • • • • none • Size Others Provision Binary shift: automatic 60 bits. Normalization: automatic 12 + 48 bits. • 22 Special- Cases of Operands .221 • 222 Negative numbers: .••. one's complement. Zer\>: •••••.•••••• one form. • 23 Instruction Formats: see Paragraph. 123, above • .234 Basic address structure: ••••• . •• • • • • 3-address. .235 Literals Arithmetic: . . • . • . •• 18 bits. Comparisons and tests: • . • . • • • • • • • 18 bits. Incrementing modifiers: ••...••••• 18 bits. .236 Directly addressed operands .2361 Internal storage type Minimum size Registers: 118-bit word Core Storage: 1 60-bit word Extended Core Storage: 1 60-bit word • 2362 Increased address capacity: none • .237 Address indexing • 2371 Number of methods: •• one • * 11/65 Maximum size 2 60 bit-words 2 words Volume accessible 24 registers 131,072 words 131,072 words 16, 777,216 words Fixed-point mUltiply and divide operations can be performed indirectly in the floating-point functional units with the assistance of the pack and shift instructions. A AUERBACH '" (Contd.) CENTRAL PROCESSORS 260:051. 2373 .2373 Indexing rule: •.•••• base address field and index field are added to form core address. Indexing is not used to select register addresses. Overflows cause program interrupts. • 2374 Index specification: ... within the instruction. .2375 Number of potential indexers: ... " . . . . 8. .2376 Addresses which can be indexed Type of address Application Core memory: selection of operands for later instructions, and storage addresses for instruction results. • 2377 Cumulative indexing: . . . . not possible. .2378 Combined index and step: . • . . . . . . . • • • . yes. . 238 Indirect addressing: ••.. none. .239 Stepping .2391 Specification of incre.ment: ..••.•...••.• in register. • 2392 Increment sign: • . . .. • . . positive or negative • • 2393 Size of increment: .•... 18 bitS • • 2394 End value: .•.••.•..• specified in test instruction• . 2395 Combined step and test: ..•.••..••.•. not available . • 24 Special Processor Storage \, .241 .242 Category of storage A registers: B registers: X registers: Category of storage A, B,X Registers: \. Size in Program bits usage 8 18 address storage. 18 index storage. 8 60 operand storage. 8 Total number Access time, Cycle time, of locations ~ IJ.sec Number of locations 24 .3 SEQUENCE CONTROL FEATURES · 3-1 Instruction Sequencing: the instructions are placed in the instruction stack in ordinary sequence; their execution sequence is determined by the availability of the operands and the functional units, as explained in Paragraphs .121 and. 122. .32 Look-Ahead: . . . . . . . see Paragraphs. 121 and . 122 for descriptions of the various facilities incorporated to ensure effective utilization of the central processor. • 33 Interruption • 331 Possible causes In-out units: •....• In-out controllers: .. Storage access: .••. Processor errors: .. Other: ....•••..• 0.1(6400, 6600) 0.025 (6800) 0.025 (6800) · 334 Interruption conditions: Peripheral Processor or Central Processor monitor control is enabled. .335 Interruption process Registers saved: ... all operational registers are saved, ready for Exchange Jump or Internal Jump program switching. Destination: . . . . . . processor waits until program switching is completed and new program is initiated. · 336 Control methods Determine cause: ... handled by executive program, with assistance of special hardware diagnostic program where necessary. .34 no. no. yes. yes. Exchange Jump request from a Peripheral Processor, or Internal Jump request from Central Processor. . 332 Control by routine: •.. handled in Peripheral Processor. O. 1 (6400, 6600) Multiprogramming • 341 Method of control: ... Peripheral Processors constantly monitor current central processor program, and prepare further programs. Highest priority program which is ready is immediately instituted as the active program . · 342 Maximum number of programs: .••..•. no limit. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 260:051. 343 CONTROL DATA 6000 SERIES .343 Precedence rules: ••. priority algorithm in Per- Control Data 6400 - Section 263:051 Control Data 6600 - Section 264:051 Control Data 6800 - Section 265:051. ipheral Processor program . • 344 Program protection- .5 Storage: .•••••••• each program can access only one contiguous area of central memory. Maximum separate units: ••.•••••• no hardware limit. • 35 .4 Multi-sequencing: ••• the sequencing of the central processor is completely independent of the sequencing of the various Peripheral Processors. PROCESSOR SPEEDS The performance of each Control Data 6000 Series system, in terms of both basic instruction times and speeds on our standard measures of performance, is shown in the Central Processor section of the appropriate subreport: 11/65 A AUERBACH ~ ERRORS, CHECKS, AND ACTION Error Check or Interlock Action Overflow: check Underflow (float-pt) : check Zero divisor: check Invalid data: Invalid operation: Arithmetic error: Invalid address: Receipt of data: Dispatch of data: not possible. not possible. no check. check no check. no check. flag set, result set to maximum value . flag set, result set to zero. flag set, result set to maximum value . program halt •. -1. 260:052. 100 STiNDARD CONTROL DATA 6000 SERIES PERIPHERAL AND CONTROL PROCESSORS /AEDP AUERBAC~ REPOITS i.--- PERIPHERAL AND CONTROL PROCESSORS .1 GENERAL .11 Identity: .12 .... 6400 Peripheral and Control Prooessor; 6600 Peripheral and Control Processor; 6800 Peripheral and Control Processor. Description Every Control Data 6000 Series computer system includes 10 logically independent Peripheral and Control Prooessors in addition to the high-speed Central Processor described in the preceding report section. Each Peripheral and Control Processor has an associated core storage unit consisting of 4,096 twelve-bit words, and the necessary arithmetic and logical capabilities to enable it to execute independent programs. The Central Processor's program is not delayed in any way by the multiprocessing operations of the 10 Peripheral and Control Processors. The prinoipal roles of the Peripheral and Control Processors in the 6000 Series computer system can be summarized as follows: • To control all input-output operations through direct communication with the 12 Data Channels. • To perform executive and monitor control services for the entire system. • To direct the buffered overlapping of high-speed disc-file operations. • To perform "off-line" data transcription operations. • To serve the program in the Central Processor by performing necessary but time-consuming operations such as file searching and array manipulations. • To exchange operating programs in the Central Processor in order to ensure that the Central Processor remains productively occupied. • To perform high-speed block transfers of data to and from the Central Memory. The Peripheral and Control Processors that are used with the Cont:r:ol Data 6400 and 6600 computer systems have a clock cycle time of 1 microsecond; those used with the 6800 computer system have a clock cycle time of 250 nanoseconds. Data transmission between any of the input-output Data Channels and the memory unit of a Peripheral and Control Processor can proceed at 2 million characters per second in the 6400 and 6600 computer systems, and at 8 million characters per second in the 6800 computer system. This report section describes the general functional characteristics of the Peripheral and Control Processors. The individual subreports for each computer system in the Control Data 6000 Series contain the processing performance measurements for the Peripheral and Control Processors, as follows: 6400 Peripheral and Control Processors: . . . . 6600 Peripheral and Control Processors: .... 6800 Peripheral and Control Processors: . . . . . 121 Multiplexed Instruction Section 263:052. Section 264:052. Section 265:052. Execution The instructions within the programs of each Peripheral Processor are executed in the normal sequential order. Each of the 10 programs operates from a separate, individual memory unit, and each uses four separate registers within a Register Barrel. A single instruction execution unit, called the Instruction Control device, is shared by the 10 Peripheral and Control Processors, with each processor receiving a turn during every I-microsecond or O. 25-microsecond cycle. The execution of most instructions requires from two to four cycles or passes through the Instruction Control device. One instruction from each of the 10 peripheral programs enters the Register Barrel and begins its circular tour to the Instruction Control device. During 90 percent of the instruction cycle, the instruction is being interpreted and prepared for execution. Only 10 percent of the instruction cycle is spent in the Instruction Control device, which actually executes the instruction. This multiplexed arrangement provides each Peripheral Processor with an assurance of executing one instruction or portion of an instruction every 1 microsecond (in the 6400 and 6600 systems) or every 250 nanoseconds (in the 6800 system). . 122 Instruction Format Peripheral and Control Processor instructions can have a 12-bit or a 24-bit format. The 12-bit format has a 6-bit operation code, F, and a 6-bit operand or operand address, d, as illustrated on the next page. The 24-bit format uses an additional 12-bit quantity, m, to form with d an 18-bit operand or operand address. These formats provide for 6-bit or 18-bit operands and 6, 12, or 18-bit addresses. The quantities d or dm can be used directly in some instructions as literals. The 6-bit segment d can directly address one of the first 64 addresses in the processor's memory unit, or it can provide an indirect address, the content of which is the address of the desired operand. In order to address any of the 4,096 words of a Peripheral and Control Processor's core storage unit, the quantities m and d (possibly zero) are added together to produce the 12-bit operand address. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 CONTROL DATA 6000 SERIES 260:052. 122 A complete list of the instruction set for the Control Data 6000 Series Peripheral and Control Processors is presented in Section 260: 121. . 122 Instruction Format (Contd.) The diagram below illustrates the two basic instruction formats. . 124 Interrupt Facilities 12-Bit Format: 24-Bit Format: F d 6 6 F d m 6 6 12 Two basic Data Channel conditions can be tested by the Peripheral and Control Processors to assist in the control of input-output operations. Each of the 12 basic Data Channels has an active/inactive flag to signal the testing processor that the channel has been selected for use and is busy with an external device. Each channel also has a full-empty flag to indicate that a word (data or I/O control) is available in the 12-bit data register associated with each Data Channel. A thirteenth Data Channel is used in all 6000 Series systems for communication with a real-time clock that runs continuously and is incremented once every Peripheral Processor clock cycle. The clock's value can be tested at any time by the Peripheral and Control Processors, and can be used to determine program running time or the time of day, as required. None of the above I/O flags or conditions can actually interrupt the Peripheral and Control Processors' programs; these processors must test the flags and indicators, and initiate appropriate action depending on the results of the tests. F: . . . . . . . . . . . . operation code. d: . . . . . . . . . . . . literal, address. or index value. m: . • . . . . . . . . . portion of a literal or address. . 123 Instruction Repertoire The instruction repertoire of the Peripheral and Control Processors is normally of no concern to the programmer of a Control Data 6000 Series computer system because these processors normally are not programmed by the user. They are usually assigned tasks by SIPROS, the integrated operating system for the 6000 Series. SIPROS controls a sufficiently large number of system routines to provide all input-output, data transcription, and standard system servicing operations. The Exchange Jump instruction gives the Peripherai and Control Processors the ability to interrupt the Central Processor and exchange its currentlyoperating program with another from Central Memory. When each program that is to be executed in the Central Processor is loaded into Central Memory, a 16-word "control package" is loaded with it. Exchange Jump signals the Central Processor to exchange the contents of its registers and other control information with the 16-word control package for the program that has been selected for -initiation. The control package includes such information as the initial contents of the eight A and eight X Central Processor registers, the Central Memory reference address of the program, the program execution address (P register), and the Field Length of the program for purposes of memory protection. A complete exchange of Central Processor programs can be performed in less than five microseconds. The programmer generally writes his program for execution by the Central Processor and allows SIPROS to determine when and to what extent the Peripheral and Control Processor programs should be utilized. However, in those cases in which the FORTRAN, COBOL, or ASCENT (Central Processor assembly language) programmer explicitly chooses to perform specific routines in the Peripheral and Control Processors, he can code these routines in-line by means of the ASPER Peripheral Processor assembly language (see Section 260:172). The Peripheral and Control Processors have an instruction repertoire of 64 instructions, including fixed-point binary addition and subtraction, testing, incrementing, jumps, shifts, and input-output device control. Two additional instructions are included to transmit blocks of data between the peripheral memory units and Central Memory. No instructions are supplied to provide automatic editing, code translation, or radix conversion facilities. . 125 Software Assignments The Peripheral and Control Processors are normally assigned programs by SIPROS, the operating system for the Control Data 6000 Series, according to demands within users' programs and requirements of the system's supervision. Two of the Peripheral and Control Processors are permanently assigned to system control activities, and two additional Peripheral Processors are dedicated for use by the system whenever disc file input-output operations occur. The remaining Peripheral Processors, called Pool Processors, are available for performing any tasks assigned them by SIPROS in service of the Central Processor program, the programs in the other Peripheral and Control Processors, and the routines of SIPROS itself. Table I shows the typical assignments of Peripheral and Control Processors within a Control Data 6000 Series system. The Executive/Monitor routines and other services of SIPROS are described in Section 260: 191 of this report. (Contd.) Two instructions can be used by the Peripheral and Control Processors to communicate with the Central Processor. The Exchange Jump instruction, described in Paragraph .124, enables a Peripheral and Control Processor to remove a Central Processor program from operation. and to replace it with another program in Central Memory. all in less than 5 microseconds. Another instruction, called Read Program Address, permits the Peripheral and Control Processor to monitor the status of the current Central Processor program. Any delays or program exits within the Central Processor program can then be determined, and another program can be initiated by means of the Exchange Jump instruction. 11/65 A AUERBACH • /' ./ PERIPHERAL AND CONTROL PROCESSORS I TABLE I: ALLOCATION OF PERIPHERAL PROCESSORS " PERIPHERAL PROCESSOR (PP) 1 Executive & Monitor PP; this processor is permanently dedicated. 2 Disk Executive PP; this processor is permanently dedicated. 3 Primary Disk Slave PP; this unit is dedicated whenever there are any disk requests. 4 Secondary Disk Slave PP; this unit is dedicated whenever there are any disk requests. 5-10 Pool PP's; these units are available for other system operations, off-line transcriptions, and internal operations, as stipulated in user's program. . 13 Availability: " . . . . . 6 months . . 14 First Delivery: . . . . . 1965 (with 6600 system) . .2 PROCESSING FACILITIES .21 • 214 . 215 . 216 . 217 . 218 Operations and Operands Operation Provision and Variation Fixed point automatic binary 12 bits. Add/subtract: Multiply: none. none. Divide: none. Floating point: BooleanAND: automatic } Inclusive OR: automatic binary 12 bits. Exclusive OR: automatic Comparison: . . . . • . . no automatic facilities • Code translation: .... none . Radix conversion: ... none . Edit format: . . . . • . . none . Table lookup: . . . . . . none . .22 Special Cases of Operands .211 .212 .213 ( DUTIES 260:052. 130 .236 Directly addressed operands Internal storage type: .. , . . . . . . . Peripheral Core Storage. Minimum size: .... 12-bit word. Maximum size: .... 12-bit word. Volume accessible: .4,096 words. Increased address capacity: . . . . . . . use of A register to hold address makes all of Central Memory accessible. .237 Address indexing: ... none as such; address increment values can be included within an instruction. .238 Indirect addressing: .. specified in operation code; not recursive. .239 Stepping: . . . . . . . . . any 12-bit word can be stepped by +1 or -1. .24 Instruction Formats: . see Paragraph .122 . • 234 Basic address structure: .•....•. .235 Literals Arithmetic: . . . . . • . Comparisons and tests: . . • . . . . . . . Incrementing modifiers: .....• one-address. 18 bits. 18 bits. 6 bits. © Category of storage Size in bits A Register: 18 P and Q Registers: 12 K Register: 9 Program usage adder in each processor. program addressing and incrementing operations. operation control. .3 SEQUENCE CONTROL FEATURES .31 Instruction Sequencing: . . . . . . . see Paragraph .121. . 32 Look-Ahead: . . . . . . . none . . 33 Interruption: . . . . . . . none; see Paragraph . 124 . .34 Multiprogramming: .. none; i. e., only one program at a time per Peripheral Processor. .35 Multi-sequencing: ... achieved through assignment, by either SIPROS or the programmer, of appropriate portions of user programs to individual Peripheral and Control Processors. .4 PROCESSOR SPEEDS The performance of the Control Data 6000 Series Peripheral and Control Processors, in terms of both their basic instruction times and speeds on our standard measures of performance, is shown in the appropriate subreport section for each 6000 Series computer system: . 221 Negative numbers: ... one's complement . .222 Zero: •••.••.••••• two forms; negative zero is considered non -zero in tests for zero. .223 Operand size determination: . . . . . determined by the instruction requirements. . 23 Special Processor Storage 6400 Peripheral and Control Processors: . Section 263:052. 6600 Peripheral and Control Processors: . Section 264: 052. 6800 Peripheral and Control Processors: . Section 265:052. .5 ERRORS, CHECKS, AND ACTION ID:!2!: Check or Interlock Overflow: Invalid data: Invalid operation: Arithmetic error: Invalid address: Receipt of data: Dispatch of data: no check. not possible. not possible. no check. no check. no check. no check. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 - 260:061. 100 CONTROL DATA 6000 SERIES CONSOLES 6602 DISPLAY CONSOLE CONSOLES: 6602 DISPLAY CONSOLE .1 GENERAL . 11 Identity: . • • . . . . . . . 6602 Display Console . .12 Associated Units: .•.. none. .13 Description this data, and displays it on one of the cathode-ray display screens. The keyboard input itself and system directives to the operator are usually presented on one display screen, and status information concerning the current problem program and other concurrently-running programs is displayed on the other screen. The 6602 Display Console is an essential unit in . every Control Data 6000 Series computer system. It consists of two cathode-ray display units and a manual keyboard, providing communication capabilities between the system operator and the SIPROS operating system, which, in turn, can communicate with every device in the computer system complex. The 6602 Display Console does not have the capability to display automatically the contents of any of the registers or memory locations, but equivalent functions can be performed by means of the SIPROS control program in one of the Peripheral and Control Processors. According to the data entered manually via the Display Console's keyboard, the control program can also alter the contents of the Central Memory and the main registers, and can interrupt, step, and/or terminate a program in the Central Processor. The 6602 Display Console is connected to the computer system by means of a permanently-assigned Data Channel. It therefore functions in much the same way as any input-output subsystem. Additional Display Consoles can be added if desired, but a Data Channel must be reserved for the use of each Display Console that is added. The operator enters information into the system through the 50 alphanumeric keys on the Display Console's keyboard. This keyboard is used to initiate a control program in one of the Peripheral and Control Processors. The control program examines the keyboard input, extracts requested data from various parts of the system, formats The use of multiple 6602 Display Consoles can be controlled by a single Peripheral and Control Processor. This usage could conceivably reduce system idle time by allowing the simultaneous debugging and monitoring of a number of unrelated problems that are currently being multiprogrammed in the system. . 14 Availability: . . . . . . . 6 months . . 15 First Delivery: . . . . . 1965 . ./ Figure 1: View of 6602 Display Console 11/65 A AUERBACH ~ 260:062.100 1. ~EDP STANDARD \ AUERBACH CONTROL DATA 6000 SERIES CONSOLES 6060 REMOTE CALCULATOR REPORTS CONSOLES: 6060 REMOTE CALCULATOR .1 GENERAL · 11 Identity: • . • . • . . . . . 6060 Remote Calculator. · 12 Associated Units: . . . . 6677 Multiplexor. 310 Acoustic Coupler or Bell System 103A Data Set. · 13 Description The Control Data 6060 Remote Calculator is a desk-type electronic calculator that permits users in remote locations to utilize the mathematical processing capabilities of a large-scale computer center. Using the Remote Calculator, the operator simply keys in his problems in standard FORTRAN-like mathematical notation and calls for a display of the solution. His statements are transmitted to the computer center over voice-grade telephone lines. The 6060 Remote Calculator is a portable device, weighing approximately 40 pounds, that can be used wherever there is a normal telephone hand-set. After the computer center has been called, the telephone hand-piece is placed on a Control Data 310 Acoustic Coupler which connects to the Remote Calculator. Remote operations can begin at once. Communication between the Remote Calculator and the computer center can alternatively be established via a Bell System 103A Data Set. The 6060 Remote Calculator's interface at the computation center is the Control Data 6677 Multiplexor. Up to 128 Remote Calculators can be connected to each 6677 Multiplexor, and up to four Multiplexors can be connected to one Peripheral and Control Processor through the standard inputoutput Data Channels. When requests for specific mathematical functions and procedures are entered at the Remote Calculator and transmitted to an assigned Peripheral and Control Processor, a resident control program, REM COP , translates and monitors these requests and enters the desired programs into the Central Processor's work queue. As soon as the problem has been solved, REMCOP transmits the solution to the Remote Calculator for display. The 6060 Remote Calculator consists of an illuminated 12-digit decimal display panel and five basic groups of keys spread over the inclined surface of the keyboard. The display panel is used to view the problem statement as it is keyed in, assisting in the correction of keyboard errors. The display panel also presents the computer system's solution to the mathematical problem. The data entry section of the keyboard permits direct entry of numeric values and mathematical operation symbols. The "variables" keys provide the facility for attaching alphabetic variable names to user-provided values for use in the problem statements. A third group of keys provides 32 standard mathematical functions that can be called for to assist in obtaining the desired solution. The variety of keyboard functions can be altered to meet the specific needs of each user. The status keys provide basic communication ability with the Control Data 6000 system and also serve as status illuminators. One of these keys also provides access to any named mathematical function in the central computer's memory. The fifth group of keys controls the execution and display of the computational statements and solutions. First deliveries of the 6060 Remote Calculator are scheduled for 1966. No details are available to date concerning the demand on the Central Processor caused by Remote Calculator operations. ( © '965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 260:063. 100 14 CONTROL DATA 6000 SERIES CONSOLES 6090 ENTRY/DISPLAY CONSOLE AUERBACH STANDARD ED:!? REPORTS CONSOLES: 6090 ENTRY/DISPLAY CONSOLE .1 GENERAL . 11 Identity: . . . .12 Associated Units: •... Model 6090 Central Control Unit. Model 6678 Multiplexor. .13 Description 6090-2, which displays 20 lines of 50 symbols. The symbol repertoire includes the upper case alphabet, the numerals 0 through 9, the period, comma, semicolon, and several other special characters. . 6090 Entry/Display Console (formerly Model dd12 Remote Data Display). Data is entered on the Entry/Display Console keyboard, where it is converted into 6-bit characters by the 6090 Central Control Unit. The Central Control Unit then generates the display of this information and transmits it to the computer center. The display of information retrieved from the computer and transmitted over standard telephone lines is also controlled by the Central Control Unit. The Control Data 6090 Entry/Display Console is the basic component of a high-speed data entry and retrieval system for the Control Data 6000 Series. The 6090 uses a 14-inch rectangular cathode-ray tube to display both the entered and retrieved information. A standard typewriter-styled keyboard is used to enter requests for data. The Entry/Display Console system can be augmented by a 75-card-per-minute card reader and/or a 100-line-per-minute line printer. The printer can provide hard-copy records of the data requests and the retrieved information. The 6090 Entry/Display Console is normally used as a remote device, communicating with the central computer over voice-grade telephone lines. Up to 64 Entry/ Display Consoles can be multiplexed into a single 6000 Series Data Channel by means of a Model 6678 Multiplexor. The 6090 Entry/Display Console displays up to 1, 000 symbols on a 14-inch rectangular screen. The console is available in two models: Model 6090-1, which displays 10 lines of 50 symbols, and Model / Data transfers use the 6-bit character as the basic unit of information. The transmission of these characters is protected by the automatic generation and validation of a parity bit for each character. As announced, the 6090 Entry/Display system is general in its design and can be modified to suit specific requirements. No details are available to date concerning the software support available for use with the 6090 Entry/Display Consoles. However, it is known that this software will be integrated with the SIPROS software package. The 6090 is manufactured by Control Data Corporation. . 14 Availability: . 1 year . .15 First Delivery: . . December 1966. / 11/65 A AUERBACH $ 260:071. 100 1& AUERBACH STANDARD ED)? CONTROL DATA 6000 SERIES INPUT-OUTPUT 405 CARD READER REPORTS INPUT·OUTPUT: 405 CARD READER .1 GENERAL . 11 Identity: . . . . . 12 Description Processors. The program facilities available with the Control Data 405 Card Reader do not differ significantly when different controllers are used, except that where the controller can be physically connected to two data channels, it is possible to switch one card reader between the two computer systems by connecting the two channels to different systems. . 405 Card Reader. 3248 Card Reader Controller. 3447 Card Reader Controller. 3649 Card Reader Controller. A single card read instruction defines an area in core storage which is to be filled with data read by the .card.reader. As many cards as are necessary to fIll thIS area are read in under the supervision of a card reader controller, without further program intervention being necessary. The Control Data 405 Card Reader is a fast, asynchronous photoelectric reader that operates at 1,200 cards per minute when reading full 80-column cards, and at up to 1,600 cards per minute with 51-column stub cards. The input hopper can hold 4,000 cards. Two output stackers are provided: one main stacker which can hold 4, 000 cards, and a rej ect stacker which can hold 240 cards. The cards are turned individually as they are being read so that the card deck in the output stacker is in exactly the same order as it was before being read. Data Channel control flags can be set when the card reader becomes available, when a card read operation is successfully completed, or when for some reason a card read operation ends without being successfully completed. The Peripheral Processor program can test all of these conditions. In addition, status indicators show: whether the unit is currently able to respond to an instruction; which interrupt conditions are presently activated; whether the card presently being read is a binary card; whether a card jam, empty input hopper, or full output hopper condition is present; whether a card read error has been noted; and whether the operator has set a switch on the reader indicating that the last card of the card file being read is physically in the card reader. The card read operation proceeds serially, columnby-column. Two separate photoelectric read stations read each column, and the two readings are checked within the card reader before the column image is forwarded to the card reader controller. Conversion from Hollerith to BCD code is normally executed automatically on all cards which do not have positions 5 and 7 punched in column 1. The conversion can, however, be inhibited by program where desirable. Each card reader must have its own individual card reader controller, so the number of card readers which can be connected to a computer system is related to the number of data channels and the number of selectable positions on each data channel. There are three different Card Reader Controllers. The controllers differ in their buffering provisions and in the number of data channels which can be connected to each controller. The available controller models and their characteristics are: The card reading operation does not delay the Central Processor in any way. However, its operation does place a small load upon the Peripheral Processor that controls the card reading. Since the amount of this delay varies with each member of the Control Data 6000 Series, it is presented in the Simultaneous Operations section of the subreport on each system. Model 3248: unbuffered, one data channel connection. Model 3447: full-card buffer, one data channel connection. Model 3649: full-card buffer, two data channel connections. The Card Reader Controllers intervene between the 6681 Data Channel Converter and the card reader itself. The Data Channel Converter connects to one of the 12 6000 Series Data Channels, which, in turn; communicates with one of the 10 Peripheral .13 Availability: . . . . . . . 4 months. . 14 First Delivery: . . . . . 1963. © 1965 AUERBACH Corporation and AUERBACH info, inc. 11/65 260:072.100 1& CONTROL DATA 6000 SERIES INPUT-OUTPUT CARD PUNCHES STANDARD EDP AUERBACH R£PDRTS INPUT·OUTPUT: CARD PUNCHES .1 .11 .12 • GENERAL Identity: . 415 Card Punch. IBM 523 Card Punch. IBM 544 Card Punch. 3245 Card Punch Controller. 3446 Card Punch Controller. 3644 Card Punch Controller. Where the controller does contain a fullcard buffer, the data can be supplied in BCD column-by-column format and automatically "turned around" in the buffer and converted to the row-by-row format required by the card punch without any program supervision. At the same time, automatic conversion from internal BCD to Hollerith coding can occur if desired. Description A Control Data 415 Card Punch can be connected to any Control Data 6000 Series computer through a Card Punch Controller. The punch operates at 250 cards per minute and uses a row-by-row punching technique. The punched data is then read at a post-punch read station, which counts the number of holes in the card. Subsequent to the postpunch read station, a card can be offset in the output stacker so that the operator can take any necessary action to remove mispunched cards from the card files. • Switching Between Computer Systems: Where the controller can be physically connected to two data channels, it is possible to switch the card punch unit from one computer system to the other by connecting the two data channels to different computer systems and using either channel as required. Special instructions are available to reserve the punch for one system at a time, to allow for controlled operation. IBM 523 or 544 Card Punches can be used in place of the Control Data 415 Card Punch. These IBM card punches operate at 100 and 250 cards per minute, respectively, and are functionally equivalent to the Control Data 415 except that they have no provision for offsetting mispunched cards. A single card punch instruction defines an area in core storage whose contents are to be punched out. As many cards as are needed to accommodate all of the data in the designated area will be punched in response to the instruction. There are three different Card Punch Controllers, anyone of which can control one card punch unit. The controllers differ in their buffering provisions and in the number of data channels which can be connected. The available controller models and their major characteristics are as follows: Model 3245: unbuffered one data channel connection. Model 3446: full-card buffer one data channel connection. Model 3644: full-card buffer two data channel connections. Data Channel control flags can be set when the card punch becomes available, when an operation is successfully completed, or when for some reason an operation ends without being success-fully completed. In addition, status indicators show whether the unit is currently able to respond to an instruction, what interrupt conditions are presently activated, and whether there has been a failure to feed a card. Each card punch must have its own individual controller, so the number of card punches that can be connected to a computer system is related to the number of data channels and the number of selectable positions on each data channel. The Card Punch Controllers intervene between the 6681 Data Channel Converter and the card punch itself. The Data Channel Converter connects to one of the 12 6000 Series Data Channels, which, in turn, communicates with one of the 10 Peripheral Processors. The available program facilities differ depending on which controller is used. The differences in program facilities are: • Error Checking: Where the controller does not have a full-card buffer, the hole count reported by the post-punch read station cannot be used because no equivalent hole-count of the card image exists; therefore, no comparison between the two counts can be made. 11/65 Card Punch Coding: Where the controller does not contain a full-card buffer, the computer must provide the data in exactly the form in which it is to be punched. The card punching operation does not delay the Central Processor in any way. However, its operation does place a small load upon the Peripheral Processor that controls the card punching. Since the amount of this delay varies with each member of the Control Data 6000 Series, it is presented in the Simultaneous Operations section of the subreport on each system. .13 Availability:.. . ... 4 months. .14 First Delivery: . . . . December 1964. fA AUERBACH ~ -&. 260:073. 100 STAND"" ~EDP - AUERBAC~ CONTROL DATA 6000 SERIES INPUT-OUTPUT PAPER TAPE READER/PUNCHES "'DRTS INPUT·OUTPUT: PAPER TAPE READER/pUNCHES .1 GENERAL .122 3694 Paper Tape Reader/Punch .11 Identity: . . . . . . . . . . 3691 Paper Tape Reader/ --Punch. 3694 Paper Tape Reader/ Punch. . 12 Description The 3694 Paper Tape Reader/Punch is a freestanding unit, about 60 inches high, 24 inches deep, and 42 inches wide. A large proportion of the total space is taken up by the spooling facilities which are a feature of this unit. Two separate data channels can be connected to the selfcontained control mechanism within the 3694 Paper Tape Reader/Punch, so that concurrent paper tape reading and punching can take place. • 121 3691 Paper Tape Reader/Punch The 3691 Paper Tape Reader/Punch is a freestanding unit which in its normal version is 36 inches high, 28 inches deep, and nearly 48 inches wide. A "ruggedized" version, built to withstand adverse physical conditions, has different dimensions, which are summarized in the Physical Characteristics section of this Computer System Report, on page 260:211. 100. The Paper Tape Reader operates at a peak speed of 1,000 characters per second, using standard paper or plastic tape with fully-punched holes. Reading operates photoelectrically, in either the forward or reverse direction. Control Data is currently using a Digitronics Corporation paper tape reader for this unit. The 3691 contains logically-separate reading and punching sub-units and a single data channel connection for their joint use. The single data channel connection makes it impossible to run the reader and the punch concurrently. Spooling facilities are not provided. \ ". The Paper Tape Punch is supplied by the National Cash Register Corporation, and operates at a rated speed of 110 characters per second. Five, seven, or eight-level paper tape can be used by either unit; a manual switch selection and tape width adjustment are necessary when a different type of paper tape is mounted. Character parity can be optionally used on both reading and punching, under program control. Each tape character can be read into, or punched from, a separate computer word location; or, alternatively, a packed format can be used. In the packed format, a 12bit peripheral computer word stores either two 5-bit characters or one 7-bit or 8-bit character. Conversion to or from the appropriate internal code must be accomplished by programming. The Paper Tape Reader operates at a peak speed of 350 characters per second, in the forward direction only. A Control Data Model 350 photoelectric reader is currently being used. The Paper Tape Punch is supplied by the National Cash Register Company, and operated at a rated speed of 110 characters per second. ( "-. Five, seven, or eight-level paper tape can be used by either unit; a manual switch selection and tape width adjustment are required when a different type of paper tape is mounted. There are no provisions for automatically checking the parity of the characters on the paper tape itself, and any required checking or preparation of parity-checked characters must be handled by the program. Each tape character can be read into, or punched from, a separate computer word location; or, alternatively, a number of characters can be packed into a single word. In the packed format, a 12-bit peripheral computer word stores either two 5-bit characters or one 7-bit or 8-bit character. Conversion to or from the appropriate internal code must be accomplished by programming. Data 'channel control flags are set when the unit becomes available, when an operation ends successfully, or when for some reason an operation ends ' without being successfully completed. In addition, status indicators show whether the unit is ready to respond to an instruction, whether the punch tape supply is low, and whether the punch or the reader unit was last connected to the data channel. Data channel control flags are set when the unit becomes available, when an operation ends successfully, or when for some reason an operation ends without being successfully completed. • 123 Processor Demands The paper tape reading and punching operations do not place any load on the Central Processor. However, these operations do place a small load on the Peripheral Processor that controls the paper tape reading and/or punching. Since the size of this demand, or "interference, " varies with each member of the Control Data 6000 Series, it is presented in the Simultaneous Operations section of the subreport on each system. . 13 .14 Availability: •.•.••• 6 months • First Delivery 3691 Paper Tape Reader /Punch: 3694 Paper Tape Reader /Punch: 1963. 1964. \, © , 965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 260:081. 100 CONTROL DATA 6000 SERIES INPUT-OUTPUT 3152 LINE PRINTER INPUT-OUTPUT: 3152 LINE PRINTER .1 GENERAL .11 Identity: . . • . . . . . . . 3152 Line Printer. . 12 Description hole in the specified channel of the format tape. All paper-positioning instructions can take place either before or after printing, as the program directs. The Control Data 3152 Line Printer operates at up to 150 single-spaced alphanumeric lines per minute. It contains its own control unit, which is connected to one channel via the 6681 Data Channel Converter, and a 120-character line buffer. The 3152 is a drum printer; it normally uses a 63-character drum, although alternative drums are available. The drum revolution time is 400 milliseconds, and an infinite clutch is used so that asynchronous printing is possible. Paper control is handled either by the program directly, or by a combination of the program and a 6-level format tape. Skipping over non-printed areas takes place at approximately 100 line-spaces per second. The effective speed of the 3152 Printer, including allowances for paper advance, is summarized in Table I. Program facilities include printing with single or double spacing, page ejection, and automatic advancing to the last line of a page. In conjunction with the 132-position, 6-level format loop which is mounted by the operator before printing starts, the program can instruct the paper to be positioned at the line position corresponding to the next punched Data channel control flags can be set when the printer becomes available, when an operation is successfully completed, or when for some reason an operation ends without being successfully completed. In addition, status indicators show whether the printer is ready to respond to an instruction, whether the paper supply is exhausted, or whether the printed form is positioned at the last line of the page. / Printing and spacing operations do not delay the Central Processor in any way. However, these operations do place a small load on the Peripheral Processor that controls them. Since the amount of this delay varies with each member of the Control Data 6000 Series, it is presented in the Simultaneous Operations section of the subreport on each 6000 Series computer system. The 3152 Printer is manufactured by Control Data Corporation. .13 Availability: . . . . . • . 4 months. .14 First Delivery: . . . . . June 1963. TABLE I: EFFECTIVE SPEED OF THE CONTROL DATA 3152 PRINTER Lines Advanced per Line Printed 6 12 18 24 30 (1 (2 (3 (4 (5 Printed Lines per Minute Using AUERBACH Standard Character Set* 1 2 3 4 5 150 150 150 150 150 inch) inches) inches) inches) inches) 150 118 108 100 90 * 0-9, A-Z, minus, comma, period, dollar sign. ./ 11/65 A AUERBACH • 260:082. 100 1& AUERBACH STANDARD EDP CONTROL DATA 6000 SERIES INPUT-OUTPUT IBM 1403 PRINTER REPORTS INPUT-OUTPUT: IBM 1403 PRINTER .1 GENERAL .11 Identity: .12 in detail in the IBM 1410 Computer System Report, on page 402: 082. 100. .. IBM 1403 Printer, Models 2 and 3. Control Data Line Printer Controller, Model 3258. Data channel control flags can be set when the printer becomes available, when an operation is successfully completed, or when for some reason an operation is ended without being successfully completed. In addition, status indicators show whether the printer is available to respond to an instruction and whether the paper supply is exhausted. Description Either Model 2 or Model 3 of the IBM 1403 Printer can be connected to a Control Data 6000 Series computer system by means of a Model 3258 Line Printer Controller. A separate controller is required for each printer which is to be connected to the computer system. Up to 8 controllers can be connected to each 6681 Data Channel Converter. The IBM 1403 Model 2 operates at a peak speed of 600 lines per minute and uses a horizontal-chain printing mechanism. The 1403 Model 2 is described in detail in the IBM 1401 Computer System Report, on page 401:081.100. The newer Model 3 can operate at 1,100 alphanumeric lines per minute, using a train of type slugs which move through a horizontal channel. The 1403 Model 3 is described Printing operations do not delay the Central Processor in any way. However, these operations do place a small load on the Peripheral Processor that controls them. Since the amount of this delay varies with each member of the Control Data 6000 Series, it is presented in the Simultaneous Operations section of the subreport on each 6000 Series computer system. .13 Availability: . . . . . . . ? .14 First Delivery: . . . . . October 1964 (with Control Data computer system). \" ( " © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 & 260:083.100 STAHDARD /AEDP AUER8AC~ CONTROL DATA 6000 SERIES INPUT-OUTPUT 501 AND 505 LINE PRINTERS REPORTS INPUT-OUTPUT: 501 AND 505 LINE PRINTERS .1 GENERAL • 11 Identity: tape. Skipping over non-printed areas takes place at 150 line-spaces per second. The effective speeds of both printers, including allowances for paper advance, are summarized in Table I. ••••••..• 501 Line Printer. 505 Line Printer. 3256 Line Printer Controller. 3659 Line Printer Controller. • 12 Program facilities include printing with single or double spacing, page ejection, and an automatic advance to the last line of a page. In conjunction with the 132-position, 6-level format loop which is mounted by the operator before printing starts, the program can instruct the paper to be positioned at the line position corresponding to the next hole punched in the specified channel of the format tape. All paper-positioning instructions can take place either before or after printing, as the program directs. Description The Control Data 501 and 505 Line Printers operate at up to 1,000 and 500 single-spaced alphanumeric lines per minute, respectively. Except for their operating speeds, the two units are functionally identical. Each printer contains its own 136-character line buffer and can be connected to a 6000 Series computer system through either the 3256 or 3259 Controller. Up to 8 of these controllers can be connected to each 6681 Data Channel Converter. The 3659 Controller has two channel connections, permitting two computer systems to share its use. Data Channel control flags can be set when the printer becomes available, when an operation is successfully completed, or when for some reason an operation ends without being successfully completed. In addition, status indicators show whether the printer is available to respond to an instruction, whether the paper supply is exhausted or the paper torn, or whether the printed form is currently positioned at the last line of the page. Physically, the printer is enclosed in a four-foothigh cabinet, similar to those used for peripheral control equipment. The cabinet has semi-translucent front panels, through which the operator can observe the printing operation. The use of the cabinet reduces the noise level during printing. 'Printing operations do not delay the Central Processor in any way. However, these operations do place a small load on the Peripheral Processor that controls them. Since the amount of this delay varies with each member of the Control Data 6000 Series, it is presented in the Simultaneous Operations section of the subreport on each 6000 Series computer system. Both the 501 and 505 are drum printers, and both normally employ a 63-character drum, although alternative drums are available. The drum revolution time is 60 milliseconds on the 501 and 120 milliseconds on the 505; an asynchronous clutch is used so that printing of a line can be initiated at any time. .13 • 14 Availability: ••••••• 4 months. First Delivery 501 Printer: ••.•••• June 1964. 505 Printer: •.••••• Spring 1965. Paper control is handled by the program, either directly or in conjunction with the 6-level format TABLE I: EFFECTIVE SPEEDS OF THE CONTROL DATA 501 AND 505 PRINTERS Lines Advanced per Line Printed Printed Lines per Minute Using AUERBACH Standard Character Set* 501 Printer 1 2 3 4 5 6 12 18 24 30 (1 (2 (3 (4 (5 505 Printer 1,000 750 714 667 600 500 500 500 400 375 571 416 333 267 227 375 300 250 215 187 inch) inches) inches) inches) inches) * 0-9, A-Z, minus, comma, period, dollar sign 11/65 A AUERBACH ~ -& 260:091. 100 STANDARD CONTROL DATA 6000 SERIES INPUT-OUTPUT 7-TRACK TAPE UNITS AEDP AUERBAC~ _-------J REPORTS INPUT-OUTPUT: 600 SERIES 7-TRACK MAGNETIC TAPE UNITS .1 GENERAL .11 Identity: .12 Description from the magnetic tape units, but a small demand is placed on the memory of the Peripheral Processor that controls these operations. Since the amount of this delay varies with each member of the Control Data 6000 Series, it is presented in the Simultaneous Operations section of the subreport on each 6000 Series computer system. Control Data 601 through 607 M8.0onetic Tape Units and associated Magnetic Tape Controllers. The Control Data 600 Series of 7 -track magnetic tape units offers packing densities of 200,556, or 800 characters per inch and tape speeds of 37.5, 75, or 150 inches per second. The 7-track tape units record one parity bit and six data bits in each tape row. These units, which are compatible with the IBM 729 Magnetic Tape Units and other equivalent units, are described in this section and summarized in Table 1. The 9-track units, which record eight data bits and one parity bit in each tape row and are compatible with the IBM 2400 Series Magnetic Tape Units used in the IBM System/360, are described in the next section of this Computer System Report, on page 260:092.100. Compatibility between the two groups of units is limited to their mutual use of one-half-inch magnetic tape reels as a recording medium, and to the possible modification of 9-track units so that they can read or write 7 -track magnetic tape instead of (not as well as) 9track magnetic tape. - The effective data transfer rates are controlled by the time taken to pass over the inter-block gap and by the length of each physical tape block. All Control Data 7 -track magnetic tape units use the IBMcompatible three-quarter-inch inter-block gaps, S'O that their performance when the tape speed is low and short blocks are in use is not as high as thatof other magnetic tape units which have otherwise identical specifications but which are able to use shorter inter-block gaps (e. g., the Honeywe1l204B Series). The Control Data Magnetic Tape Unit Controllers can control a maximum of from 4 to 16 tape units each, depending on which model is selected (see Table II). All the tape units connected to a particular controller must have the same physical tape speed. Each controller can handle as many simultaneous data transmissions as it has data channels connected to it. Models are available with one, two, three, or four possible data channel connections, as shown in Table II. These data channels are connected to a 6681 Data Channel Converter, which provides the interface between the tape controllers The peak data transfer rates of the 7-track magnetic tape units vary from 20,850 to 120,000 characters per second, depending upon which specific unit is in use. The Central Processor is not delayed in any way during data transmissions to and TABLE I: CHARACTERISTICS OF THE CONTROL DATA 7-TRACK MAGNETIC TAPE UNITS Model No. Tape Speed, inches per sec Recording Density, bits per inch Peak Speed, char per sec Interblock Gap Lengths inches msec (1) chars (2) Efficiency, %(3) 100-char blocks 1,000-char blocks Rewind Speed, inches per sec 601 37.5 556 200 20,850 0.75 0.75 20.0 20.0 417 150 19% 40% 71% 87% 200 603 75.0 556 200 41,700 0.75 0.75 10.0 10.0 417 150 19% 40% 71% 87% 350 604 75.0 800 556 200 60,000 0.75 0.75 0.75 10.0 10.0 10.0 600 417 150 14% 19% 40% 62% 71% 87% 350 606 150.0 556 200 83,400 0.75 0.75 5.0 5.0 417 150 19% 40% 71% 87% 350 607 150.0 800 556 200 120,000 0.75 0.75 0.75 5.0 5.0 5.0 600 417 150 14% 19% 40% 62% 71% 87% 350 I \ ',,- (1) (2) (3) Time in milliseconds to traverse each interblock gap when reading or writing consecutive blocks. Number of character positions occupied by each interblock gap. Effective speed at the indicated block size, expressed as a percentage of peak speed. © '965 AUERBACH Corporation and AUERBACH Info, Inc. ! 1/65 CONTROL DATA 6000 SERIES 260:091. 120 TABLE II: CONTROLLERS FOR CONTROL DATA 7-TRACK MAGNETIC TAPE UNITS Controller Model No. of Channels Max. No. of Tapes Acceptable Tape Unit Models* 3127 3228 3229 1 1 1 4 4 8 601 604 or 607 604 or 607 3421 3422 3423 2 2 2 4 6 8 604 or 607 604 or 607 604 or 607 3622 3625 3626 3623 3624 2 3 3 4 4 16 8 16 8 16 606 606 606 606 606 or or or or or 607 607 607 607 607 * Tape units with different tape transport speeds must not be connected to the same magnetic tape controller . • 12 Description (Contd.) and a 6000 Series Data Channel. Where there are multiple data channels connected to a single magnetic tape controller, it is not necessary that each data channel be connected to the same Control Data computer system. Where there are two computers at a single site, it is common practice to connect a single tape controller to both computer systems. This allows both computers to use any of the magnetic tape units connected to the controller, and eliminates the necessity for special switching devices. The 7-track magnetic tape units can use pure binary or BCD formats and can read backward as well as forward. Writing must always operate in the forward direction. Searching backward or forward to find a file mark, and rewinding with or without automatic unloading of the tape reel, can be handled by the magnetic tape subsystem independently of the Peripheral Processor once the operation has been initiated. Data channel control flags can be set under three separate conditions: when a tape unit becomes available, when an operation ends normally (i. e. , successfully) , and when something has prevented an operation from being successfully completed. In addition, there are 11 status codes which can be tested by. the Peripheral Processor program. These status codes are available for use whenever required. They iI).dicate whether a tape unit is available or not: whether the tape is positioned at a file mark, at the load point, or at the physical end of the tape; what density is currently being used, whether writing is permitted, and whether data has been lost through timing conflicts or is of dubious value because of the known occurrence of a transverse or longitudinal parity error. . 13 Availability: .• . • .. .14 First Delivery Model 601 Mode1603 Model 604 Model 606 Mode1607 11/65 .••..•. .....•. ....••• .•••... .2 PHYSICAL FORM Each tape drive is a single unit. The drive past the read, write, and erase heads uses pneumatic capstans. The magnetic tape passes through vacuum reservoirs immediately before and after passing under the heads themselves. The vacuum reservoirs are vertical and can hold about seven feet of tape except on the tape units which operate at 37. 5 inches per second; on these units the reservoirs are placed horizontally and have a capacity of about three feet of tape. There are three heads: the erase head followed by the write head and the read head. The gaps between the heads are 0.4375 inches between the erase and write heads, and O. 3 inches between the write and read heads. .3 EXTERNAL STORAGE The Control Data 600 Series Magnetic Tape Units use one-half-inch plastic tape. Normally 2,400foot reels are used, but some installations are successfully using 3, 600-foot reels with these tape units. The coding used is exactly the same as that used with the IBM 729 Magnetic Tape Units. .4 CONTROLLERS All tape units must be connected to a controller. The wide range of available controllers is shown in Table II. .5 PROGRAM FACILITIES AVAILABLE The tape units can read a single block in the forward or reverse direction, or write a block in the forward direction only. The size of the block is determined by the amount of storage specified as the input or output area in the instruction, and is limited only by the amountof core storage available. An end-of-file mark can be written and is preceded by a 6-inch gap. Search operations to find the endof-file mark can be conducted in either direction. A special instruction is available to erase 6 inches of tape, in order to skip over a bad spot on the tape. 6 months . January 1965. March 1963. May 1964. August 1962. May 1964. IA AUERBACH • (Contd.) INPUT-OUTPUT: 7-TRACK TAPE UNITS .5 260:091.500 are marked 1 through 8 and two marked "stand-by." Single button controls are used to bring the mounted tape to the load point and to prepare a tape reel for dismounting. Loading and unloading a reel of tape takes approximately one minute, and the tape unit must be stopped while this is done. PROGRAM FACILITIES AVAILABLE (Contd.) The program can select either binary or BCD codes and can test the control flags to determine when a tape unit becomes available, when an operation is completed normally, or when an operation is completed in some abnormal manner. The peak frequency of reloading is directly related to the tape transport speed, and is once every 13, 6.5, or 3.25 minutes for units with tape speeds of 37.5, 75, and 150 inches per second, respectively. The current status of a tape unit can be tested at any time. Special status indicators show: whether the unit is available or not; whether the tape is positioned at a file mark, at the load point, or whether it is approaching the physical end of the tape; what denSity is currently being used; and whether the tape reel presently mounted can be written on. Error status indicators show whether any data has been lost through timing conflicts or whether any parity errors have been found. .6 ERRORS, CHECKS, AND ACTION .8 Parity errors cause the setting of an indicator that can be tested by the Peripheral Processor programs. Such errors may be noted either during the automatic read-back operation, which occurs while writing is in progress, or during normal reading. Two parity checks are made, one on each 6-bit data character transferred and one on the longitudinal parity character at the end of each physical tape block. PERFORMANCE The major performance characteristics of the Control Data 600 Series of magnetic tape units (7 -track) are summarized in Table 1. The effective speed of any particular tape unit at any particular block size can be calculated by using the formula "Effective speed = Peak speed x Block length in chars/ (Block length + Interblock gap length in chars)." The required values are included in Table 1. Alternatively, the effective speeds can be read from the graphs at the end of this section. .7 Errors which arise from timing conflicts and which lead to a loss of data are similarly handled-by setting a testable indicator. Checks are made for the approaching end of the tape, and for a match between the actual length of an incoming tape block and the input area set aside to receive the block. Indicator settings are available to notify the program of the result of these checks. No explicit check is made upon the adequacy of the plastic tape itself; reliance is placed upon the parity checks on the data recorded on the tape. EXTERNAL FACILITIES The unit number is displayed on a dial at the top of the unit. There are ten positions, eight of which EFFECTIVE SPEED: CONTROL DATA 601, 603, and 606 MAGNETIC TAPE UNITS (Recording density: 556 char/lnoh) 100,000 ., I" 4 / I V / 10,000 ., / I. Effective Speed, Char/sec. I 1,000 ~ / ,... i-' / ./ 4 " ~ ""'" t...- / V / / / i.-' / 7 4 2 100 ( 10 2 4 7 100 2 4 7 2 4 7 1,000 10,000 Characters Per Block © 1965 AUERBACH Corporotion and AUERBACH Info, Inc. 11/65 CONTROL DATA 6000 SERIES 260:091. 901 EFFECTIVE SPEED: CONTROL DATA 604 AND 607 MAGNETIC TAPE UNITS (Recording density: 800 char/inch) 2 lOa, 000 \',Q1 7 / 2 V 7 I, 000 /~ ,/ IL V 4 2 / / la, 000 Effective Speed, char/sec. ~ ./ 4 / / Y V ./ 1/ 7 4 2 100 10 2 4 7 100 2 4 7 Characters Per Block 11/65 fA. AUERBACH ~ 1,000 2 4 7 10, 0000 .&. fA. AUERBAC~ 260:092.100 STlHOARD CONTROL DATA 6000 SERIES INPUT-OUTPUT 9-TRACK TAPE UNITS EDP REPORTS ..- INPUT·OUTPUT: 600 SERIES 9·TRACK MAGNETIC TAPE UNITS .1 GENERAL .11 Identity: •••••••..• Control Data Magnetic Tape Units, Models 692, 694, 696, and associated Magnetic Tape controllers .12 Description record. This check is based on an 8-bit character that is generated from the data bytes during the write operation and then recorded at the end of the tape block. During subsequent read operations, the check character is regenerated and compared to the check character that was originally recorded. Models 3825, 3826, and 3827 controllers have been announced for the 9-track Control Data tape units. The ratio of data channel connections to magnetic tape unit connections is unusually high, one data channel being provided for every two magnetic tape units which can be connected. Preliminary indications are that it will be possible to connect any of the three 9-track tape unit models to any of the three controller models. The number of magnetic tape units and data channels that can be connected to each controller model are as follows: The Control Data 692, 694, and 696 Magnetic Tape Units use 9-track coding, with a recording density of 800 bits per inch. Their peak data transfer rates are 30, DOD, 60, 000 and 90, 000 bytes per second, respectively, and the tape recordirig used is compatible with the IBM 2400 Series 800 bpi magnetic tape units, since they use the same coding, the same checking, and the same denSities. They are not compatible under normal circumstances with the other tape units used with the Control Data 6000 Series; however, they can be modified to read and write seven-track tape instead of (not as well as) nine-track tape. Controller Model: Magnetic Tape Units: Data Channels: The effective data transfer rates are affected by the time taken to pass over the interblock gap and by the physical length of each magnetic tape block. The interblock gap length is 0.6 inch, and the effective data transfer rates for various block lengths are shown in both Table I and the graph on the next page. 3827 4 6 8 234 The physical and functional details of the Models 692, 694, and 696 Magnetic Tape Units are, except for the coding and checking methods, identical with those of the Control Data 7-track magnetic tape units; these are described in detail in the preceding report section, 260:091. The major design features of these tape units are the use of vacuum capstans and vacuum reservoirs for tape control, combined read/write heads for read-after-write checking, and automatic searching for end-of-file marks in either the forward or backward direction. The peak speeds of the Control Data 692, 694, and 696 tape units are 30,000, 60,000 and 90,000 eight-bit bytes per second, respectively. These speeds are functionally equivalent to 40,000, 80,000, and 120,000 six-bit characters per second, respectively, unless the data is recorded in the 8-bit Extended BCD or 4-bit packed decimal codes used in the IBM System/360. The reading and recording operations are checked by the standard row and track parity checking schemes. In addition, a cyclic code check is used to test the validity of each tape block or physical 3825 3826 The 9-track magnetic tape units are manufactured by Control Data Corporation. .14 Availability: • • • . •. ? .15 First Delivery: • • .• ? TABLE I: CHARACTERISTICS OF THE CONTROL DATA 9-TRACK MAGNETIC TAPE UNITS Model No. (. " Tape Speed, inches per sec Recording Density, bits per inch Peak Speed, bytes per sec inches msec (1) chars (2) Interblock Gap Lengths Efficiency, % (3) 100-char blocks 1,000-char blocks Rewind Speed, inches per sec 692 37.5 800 30,000 0.6 16.0 480 17 68 200 694 75.0 800 .60,000 0.6 8.0 480 17 68 350 696 112.5 800 90,000 0.6 5.4 480 17 68 ? (1) Time in milliseconds to traverse each inter block gap when reading or writing consecutive blocks. (2) Number of character positions occupied by each inter block gap. (3) Effective speed at the indicated block size, expressed as a percentage of peak speed. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 CONTROL DATA 6000 SERIES 260:092.901 EFFECTIVE SPEED: CONTROL DATA 692, 694, AND 696 MAGNETIC TAPE UNITS (Recording density: 800 bytes/inch) 10,000,000 7 4 2 1,000,000 7 4 2 100,000 7 ", Effective Speed, char/sec. 4 / 2 i,; 10,000 I." l.;' ./ 4 2 1,000 7 // L..oio-'''' 692 ".",.-- i"'" ~ ~'" ~ ~~ )f'/ i,;" / ./ ~ ," .~ 7 t:/ , "/ , l..t1' 69 6 ..--- / ~ /' V ~ , I 4 2 100 2 10 4 2 7 4 7 2 1,000 100 4 7 10,000 Characters Per Block / 11/65 fA.• AUERBACH 260:093. 100 .£ STlNDAID CONTROL DATA 6000 SERIES 14-TRACK TAPE UNIT ./I&..EDP . . . --_..J AUERBACH REPORTS ~_ INPUT·OUTPUT: 626 14·TRACK MAGNETIC TAPE UNIT ( \ " .1 GENERAL . 11 Identity: .••••••••• Control Data 626 Magnetic Tape Unit and 6622 Magnetic Tape Controller. .12 Description The Control Data 626 Magnetic Tape Unit is the only 14-track magnetic tape equipment available with the 6000 Series. The 626 uses one-inch tape, recorded at 800 rows per inch, with a tape speed of 150 inches per second. Each row contains two 6-bit characters and a parity bit for each character. The resulting peak data transfer rate is 240, 000 six-bit characters per second. Functionally, there is no compatibility between the Control Data 626 Magnetic Tape Unit and any other magnetic tape equipment in the industry. Unlike the 7-track and 9-track 600 Series models described in Sections 260:091 and 260:092, the Model 626 is designed simply to provide high data transfer rates within a Control Data 6000 Series computer system. \ " Operational characteristics and data transfer efficiencies of the 626 Magnetic Tape Unit are shown in Table I, in a format that facilitates comparisons with other tape units. The effective data transfer rates are affected by the time required to pass over the interblock gap and by the physical length of each magnetic tape block. The interblock gap length is 0.75 inch, and the effective data transfer rates for various block lengths are shown in the graph on the next page. The physical and functional details of the Model 626 are essentially identical with those of the Model 607, as described in Section 260:091. Noteworthy features include the use of vacuum capstans and vacuum reservoirs for tape control, combined read/write heads for read-after-write checking, and automatic searching for end-of-file marks in either the forward or backward direction. The Model 6622 Magnetic Tape Controller can handle up to four Model 626 Magnetic Tape Units. However, since the 6622 Controller provides only a single data channel, only one tape unit per Controller can be writing or reading at anyone time. TABLE I: CHARACTERISTICS OF THE CONTROL DATA 626 MAGNETIC TAPE UNIT Model No. 626 (1) (2) (3) Tape Speed, inches per sec Recording Density, bits per inch 150 800 Interblock Gap Lengths Peak Speed, bytes per inches msec (1) chars (2) sec 240,000 0.75 5.0 1,200 Efficiency, % (3) 100-char blocks 7.6 1,000-char blocks Rewind Speed, inches per sec 45 350 Time in milliseconds to traverse each interblock gap When reading or writing consecutive blocks. Number of character positiQns occupied by each interblock gap. Effective speed at the indicated block size, expressed as a percentage of peak speed. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 CONTROL DATA 6000 SERIES 260:093.901 EFFECTIVE SPEED: CONTROL DATA 626 MAGNETIC TAPE UNIT 10,000,000 7 4 2 ,/ 1,000,000 7 4 2 V 100,000 7 "".. ~ ioo-" ~ ~ Effective Speed, char/sec. ~ 4 V' / 2 ~ 10,000 7 / / 4 2 / 1/ 1,000 7 4 2 100 10 2 4 7 100 2 4 7 1,000 2 4 7 10,000 Characters Per Block /' 11/65 fA AUERBACH ~ - ~ 260:101. 100 STANDARD CONTROL DATA 6000 SERIES INPUT-OUTPUT AUGMENTED I/O BUFFER AND CONTROL ~\\EDP - AUERBACH; REPORTS INPUT-OUTPUT: AUGMENTED INPUT-OUTPUT BUFFER AND CONTROL .1 GENERAL .11 Identity: .12 Description . 6411 Augmented InputOutput Buffer and Control. The 6411 Augmented Input-Output Buffer and Control unit is a large-scale, multiple-device subsystem that is designed to virtually double the input-output and control facilities of a Control Data 6400 or 6600 computer system. The 6411 is, in effect, an additional basic 6000 Series computer system without a Central Processor and with a smaller Central Memory. The components of a 6411 Input-Output Buffer and Control unit include: • 12 high-speed, bi-directional Data Channels; • 10 logically independent Peripheral and Control Processors, each with a private core storage unit that consists of 4, 096 12-bit words; and • 1 Main Memory unit consisting of 16,384 60-bit words of core storage, with a cycle time of 1 microsecond, accessible to all of the Peripheral and Control Processors. Up to twelve 6411 Input-Output Buffer and Control units can be connected to a 6400 or 6600 computer system, providing extensive, flexible, and powerful input-output and multiprocessing facilities. The 6411 can function as an on-line satellite computer system for a Control Data 6400 or 6600, connected via the Standard Data Channels. Data from a wide variety of sources, both remote and local, can be buffered in the 6411, selected, gathered, batched, and scheduled for transmission to Central Memory for eventual processing by the Central Processor, without placing any demands or delays on. any other part of the 6000 Series computer system. Another use of the 6411 unit is to provide specific groups of I/O devices or classes of data with individual and absolutely private storage and processing units. This arrangement can also be used to advantage in remote time-sharing operations. The 6411 Augmented Input-Output Buffer and Control unit is controlled and integrated with the rest of the 6000 Series system by means of a modified version of the SIPROS operating system. One of the Peripheral and Control Processors within the 6411 subsystem is designated as the Executive/Monitor control processor for the entire 6411. This control system works in conjunction with, although subordinate to, the SIPROS Executive/Monitor in the central computer system. The instruction repertoire of the Peripheral Processors within the 6411 unit is identical with that of the basic 6000 Series Peripheral and Control Processors described in Section 260:052. However, the two instructions that normally provide communication with the Central Processor are modified as used in the 6411 subsystem because no Central Processor is included in the 6411. The Read Program Address instruction in the 6411 examines the status of the data trunk that can be used to link the 6411's Main Memory and the optional Extended Core Storage unit (see Section 260:043). The 6411 unit uses the Exchange Jump instruction to initiate block data transfers between its Main Memory unit and the Extended Core Storage unit. It is significant to note that the 6000 Series programmer need not be concerned about the instruction set or processing capabilities of the 6411 's Peripheral and Control Processors, since he normally programs exclusively for the Central Processor. All Peripheral Processor task assignments are normally designated by the 6411's Executive/Monitor operating system. The programmer, however, can explicitly assign tasks to the Peripheral and Control Processors by coding specialized routines in the ASPER assembly language (described in Section 260:172). i \ © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 / -&. "..,," 260:102.100 ~EDP \. - AUERBACH CONTROL DATA 6000 SERIES INPUT-OUTPUT TERMINAL CONTROLLER REPORTS INPUT·OUTPUT: 3276 COMMUNICATION TERMINAL CONTROLLER .1 GENERAL . 11 Identity . . . . . . . . . . Control Data 3276-A Communication Terminal Controller. .12 Description The Control Data 3276 Communication Terminal Controller is a multiplexing control unit, originally developed for Control Data's 3000 Series computers, that enables a wide variety of standard and specialized data communications devices to be connected to the standard 6000 Series data channels via a6681 Data Channel Converter. Numerous data set adapters and terminal units are provided by Control Data to function under control of the 3276 Controller, providing the 6000 Series with the capability to communicate with specialized remote devices ("Class A" operations), generalized, conversational remote devices ("Class B" operations), and remote computer centers ("Class C" operations). ( • Converts the input bit-serial characters (one bit at a time) to parallel characters of up to 8 data bits for transmission to the Peripheral Processors. • Converts the output parallel characters sent from the Peripheral Processors and transmits these characters, one bit at a time, to the 3276's output channels for bit-serial transmission. • Connects the Peripheral Processors to transmission lines of widely varying speeds. • Sends to the Peripheral Processors status response codes such as Character Ready, Character Request, Character Lost, Channel Idle, and Broken Circuit. • Distributes input-output data between the Peripheral Processors and the external communications lines. The 3276 Communication Terminal Controller is capable of controlling up to 32 simplex telegraphgrade lines (16 sending lines and 16 receiving), or up to 16 half-duplex or full-duplex telegraph-grade lines, or up to 8 half-duplex or full-duplex voicegrade lines. A maximum of eight 3276 Controllers can be connected to each 6000 Series data channel through a single 6681 Data Channel Converter interface. The 3276 provides the necessary speed conversion for all data being transmitted to and from the high-speed data channels, and performs the serial-to-parallel bit transmission conversions required to communicate with the 6000 Series computer system. Table I lists the principal terminal units that can be included within the modular 3276 Communication Terminal Controller. The table also indicates the type and speed of the transmission lines that are required for use with these terminal units. Standard data sets are also listed for those terminal units that require them. Data is transferred to the computer in groups of 12-bit words. Four bits of each word are character-transfer status bits, and the remaining eight bits are data bits. Many of Control Data's terminal units cannot perform automatic parity checking. Instead, this operation is performed under program control in the 6000 Series Peripheral and Control Processors. • 311 Data Set Adapter - provides the interface for IBM 1009 Data Transmission Units, IBM 1013 Card Transmission Terminals, and IBM 7702 Magnetic Tape Transmission Terminals. Besides its multiplexing operations, the 3276 Communication Terminal Controller performs the following functions: • Decodes the "connect codes" sent by the Peripheral and Control Processors to the individual remote input-output units. A Read Connect Code causes the 3276 to scan the status of the lowspeed input units. (The 3276 cannot interrupt the Peripheral and Control Processors when data is available for processing; these processors must periodically connect to and interrogate the 3276 by program to determine whether input data is available.) Described below are these and other Control Data terminal units and data set adapters that can be controlled by the 3276 Communication Terminal Unit, plus some of the remote devices that can be connected to these terminals. • 312 Data Set Adapter - provides the same interfacing capabilities as the 311 Data Set Adapter, but transmits data over 2,OOO-bps lines rather than the 311 's 2,400-bps lines. • 313 Data Set Adapter - provides the terminal connection between half- or full-duplex lowspeed (200-bps) communications lines and the 3276 Controller. Models 33 and 35 Teletype units and IBM 1050 Data Communication Systems can be controlled by the 313. • 314 Data Set Adapter - enables the connection of standard TWX equipment, the IBM 1050, Models 33 and 35 Teletype units, Control Data's 8092 Teleprogrammer System, and Control Data 160-A and 8090 computer systems. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 CONTROL DATA 6000 SERIES 260: 102. 120 . 12 Description (Contd. ) • • • minals (1,050 words per minute) can be connected via the 317. 315 Data Set Adapter - communicates with Control Data's 1010 Card Jnput Station and 8011 Data Collector, as well as with AT&T's Dataspeed Type 5 equipment (750 words per minute). 316 Data Set Adapter - can control the same remote devices as the 315 Data Set Adapter; if both adapters are used in the same communication system, one for receiving and one for sending data, they can be operated with a Model 801 Data-Phone Automatic Calling Unit. 317 Data Set Adapter - provides the terminal connection between half- or full-duplex mediumspeed communications lines (up to 1,200 bps) and the 3276 Controller. Dataspeed Type 2 terTABLE I: Terminal Unit No. • 318 Data Set Adapter - provides the same terminal unit capabilities as the 317 Data Set Adapter. Unlike the 317, the 318 Data Set Adapter can be operated with a Model 801 Data-Phone Automatic Calling Unit. • 321 Teletype Terminal Unit - communicates over private or leased telegraph-grade lines with the IBM 1050 system and with standard Teletype equipment. • 323 Teletype Terminal Unit - provides the same interfacing capabilities as the 321 Teletype Terminal Unit, but can only send or receive data. (The 321 serves as both an input and output terminal unit.) TERMINAL UNITS USED WITH THE 3276 COMMUNICATION TERMINAL CONTROLLER Type of Line Data Sets Required Terminal Positions Required* Send Receive 311 2400-bps leased telephone line 201B 2 2 312 2000-bps telephone network 201A and 801 Dialer 2 2 313 200-bps leased telephone line 103A 1 1 314 200-bps TWX network 103A and 801 Dialer 2 2 315 750-wpm telephone line 402C 2 - 316 750-wpm telephone line 402D - 2 317 1050-wpm telephone line 202C 2 2 318 1050-wpm telephone line 202D and 801 Dialer 2 2 321 Full- or halfduplex telegraphgrade None 1 1 323 Simplex telegraphgrade None 1 - 323 Simplex telegraphgrade None - 1 * Each 3276 Communication Terminal Controller contains 32 terminal positions 16 send and 16 receive. / It!65 £. 260;103.100 STA"'" CONTROL DATA 6000 SERIES INPUT-OUTPUT DATA SET CONTROLLERS /AEDP AUERBAC~ REPORTS ~_-------J INPUT·OUTPUT: 6600 SERIES DATA SET CONTROLLERS .1 GENERAL • 11 Identity; •••••••••• 6675 Data Set Controller. 6676 Data Set Controller. 6677-A Multiplexor. 6677-B Multiplexor. 6678 Data Set Controller. .12' Description The 6600 Series Data Set Controllers are singlecircuit multiplexing terminal units that can connect a wide variety of remote data communications devices and remote computer systems directly to the input-output data channels of the 6000 Series computer systems. These controllers communicate with the remote devices over the public or private communications line facilities of the telephone or telegraph companies and use standard data set modems as interfaces at the remote and central ends of the transmission lines. .I \. bits per second. Bell System 301B Data Sets are the standard modems used at either end of the transmission line, but Models 201A, 201B, and 301C can also be used. Up to four 301B Data Sets can be multiplexed into each 6675 Data Set Controller. If slower-speed data sets are used, a maximum of 20 such devices can be used with a 6675 Controller. In addition to the 6675 Controller at the central 6000 Series computer site, another 6675 Controller is required at the remote site if the remotely-linked computer is also a 6000 Series system. If the remote computer is a Control Data 1600 Series system, a Model 8529 or 68529 Data Set Controller must provide the immediate interface; if the remote computer is a Control Data 3000 Series system, a Model 3275 or 63275 Data Set Controller is required as the immediate interfacing unit. .122 6676 Data Set Controller The 6676 Data Set Controller can control up to 64 Bell System 103A2 Data Sets located at the The 6600 Series Controllers assemble the serial central 6000 Series computer site. Data is transdata received from the data sets into 12-bit parallel mitted over private telegraph-grade lines (up to 20 data for use by the 6000 Series Peripheral and Conmiles) or over voice-grade telephone lines at 110 trol Processors, and they perform the converse bits per second. At the remote end of the commundata manipulation operations when data is transications link, a Bell System 101C Data Set intermitted to the remote stations. In addition, each faces with a standard Model 33 or 35 Teletype Controller generates a 12-bit error-check code terminal unit of either the ASR or KSR type. Up word in its cyclic encoding unit during the transto 200 Teletype stations can communicate with a mission and receipt of each data block. If Consingle 6000 Series data channel through use of this trollers are used at both ends of the transmission communications network. lines, the code word can be generated at both locations and compared to detect data transmission .123 6677-A and 6677-B Multiplexors errors. Control Data states that the reliability The 6677-A Multiplexor can control up to 64 Bell factor for this technique of error detection is System 103A or 103F Data Sets; the 6677-B can better than 99.9%, provided that the data block control up to 128 data sets of the same type. Data length does not exceed 4,096 bits. is transmitted over telephone lines at a speed of The maximum number of 6600 Series Data Set 240 bits per second. A typical remote device used Controllers that can be connected directly to each with the 6677 Multiplexors is Control Data's 6060 6000 Series data channel is a function of the 6000 Remote Calculator (see Report Section 260;062). Series operating system and the maximum duty .124 6678 Data Set Controller cycles of the system; therefore, it can only be determined by a throughput analysis of each proThe 6678 Data Set Controller can control up to 64 posed data communications system configuration. Bell System 201A or 201B Data Sets, but the two data set models cannot be intermixed on the same .121 6675 Data Set Controller 6678 Controller. A typical remote device used The 6675 Data Set Controller can be used to connect with the 6678 Data Set Controller is Control a central 6000 Series computer system with a reData's 6090 Entry/Display system (see Report mote Control Data 1600 Series, 3000 Series, or Section 260;063). Data is transmitted between the another 6000 Series computer system. Data 6678 Data Set Controller and its remote devices over telephone lines at a rate of either 2, 000 or transmission between the systems is accomplished over Telpak A telephone lines at the rate of 40, 800 2,400 bits per second. ( © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 260: 111. 100 ~ STAND'" /l&..EDP CONTROL DATA 6000 SERIES SIMULTANEOUS OPERATIONS _-------1 AUERBACH REPORTS SIMULTANEOUS OPERATIONS .1 GENERAL A Control Data 6000 Series computer system can concurrently: • Execute up to 10 independent instructions from a single Central Processor program; and • Execute up to 10 independent peripheral programs, one in each of the Peripheral and Control Processors; and • Transfer data between Central Memory and Extended Core Storage; and • Control up to 12 input-output operations, one on each Data Channel; and • Handle as many additional input-output operations as can be supported on the Data Channels by multiplexing or buffering the -individual peripheral devices or their controllers. /- Input-output operations place no demands (or "interference" delays) on the Central Processor because they are controlled by the independently-operating Peripheral and Control Processors. Even accesses to Central Memory by the Peripheral Processors normally impose no delays upon the Central Processor, since up to 10 Central Memory banks can be accessed simultaneously. Whenever a Peripheral Processor and the Central Processor attempt to access the same Central Memory bank at the same time, the Central Processor's access request is given priority. Every input-output operation does cause a certain amount of delay to the Peripheral Processor that is controlling it. The amount of this delay is frequently multiplied because of the manner in which the SIPROS I/O routines handle the slower input-output operations. In fact, a given set of input-output data will, in many cases, pass into and out of the memoryof a Peripheral Processor four times before the input or output operation is complete. Typically, data can pass from the input Data Channel, to the memory of a Peripheral and Control Processor, to the System Disk for batching, back to the memory of the Peripheral Processor, and finally to Central Memory for processing. This path is reversed for an output operation. This four-way Peripheral Processor loading (or the corresponding two-way loading when the System Disk is not used for intermediate storage) has been calculated for each of the major peripheral devices. Because these times will vary for the three computer systems within the Control Data 6000 Series, the Simultaneous Operations section of the appropriate Computer System Subreport should be consulted to obtain these I/O timing delays: Control Data 6400 . . . . Section 263: 111. Control Data 6600 . . . . Section 264: 111. Control Data 6800 . . . . Section 265: 111. / 11/65 A AUERBACH ~ \ 260: 121. 100 ~ STAMDARD CONTROL DATA 6000 SERIES INSTRUCTION LISTS IABD:!? AUERBAC~ REPORTS I...--""_~"""'-_...J INSTRUCTION LISTS: CONTROL DATA 6000 SERIES This section of the Control Data 6000 Series report presents two separate and distinct instruction lists - one for the 6000 Series Central Processors and one for the Peripheral and Control Processors that are included as integral, independently-functioning parts of every 6000 Series system. Both instruction lists include brief descriptions of the instructions, as well as the time required to execute each instruction. Immediately following each instruction list is a table explaining the symbols used in the descriptions. TABLE I: CENTRAL PROCESSOR INSTRUCTION LIST Mnemonic Description Fl..mctional Unit BRANCH Program Stop PS RJ JP ZR NX Return jump to K Jump to Bi + K Jump to K if Xi = 0 Jump to K if Xj m OR DF EQ ZR NE NZ --13 14* 9 9 --12 12 12 12 12 12 12 12 12 Bj EO 9 8* 8' 8* S' 9 8* 8* 8' S* 12 12 12 12 12 Bi > Bj Bi 2: BO Bi ::. Bj Bi < BO 8' 8* S* 8* 8* 8* 8* 8' 12 12 12 12 Transmit Xj to Xi Logical product of Xj & XI< to Xi Logical sum of Xj & Xk to Xi Logical difference of Xj & Xk to Xi 3 3 3 3 3 3 3 3 4 4 4 4 Transmit the complement of Xk to Xi Logical product of Xj & Xk; complement to Xi Logical sum of Xj & Xk; complement to Xi Logical difference of Xj & Xk; complement to Xi 3 3 3 3 4 4 3 3 4 3 3 4 Left shift Xi, jk places Arithmetic right shift Xi, jk places Left shift Xk nominally Bj places to Xi Arithmetic right shift Xk nominally Bj places to Xi Normalize Xk to Xi and Bj Round and normalize Xk in Xi & Bj Unpack XI< to Xi and Bj Pack Xi from Xk and Bj Form mask in Xi, jk bits 3 3 3 3 3 3 3 5 5 5 5 4 4 3 3 3 4 4 3 3 3 6 6 6 6 5 Floating sum of Xj and Xk. to Xi Floating difference Xj and Xk to Xi Floating double precision sum of Xj and XI< to Xi Floating double precision difference ofXj & XI< to Xi Round floating sum of Xj and Xk to Xl Round floating difference of Xj and XI< to Xi 4 4 4 4 11 11 4 4 11 4 4 4 4 11 Integer sum of Xj and XI< to Xi Integer difference of Xj and Xk to Xi 3 3 3 Kif if if if if K K K to K Xj is Xj is Xj is Xj is Xj is plus (positive) negative in range out of range definite Jump to K if Bi = EO Jump to Kif Bi Jump to K if Bi GE PL LT NG 13 14* 9 9 9 9 9 9 9 to to to to Jump to K if Xj is indefinite Jump to K if Bi = Bj ill \. 0 --- 9 9 9 9 9 Jump Jump Jump Jump Jump PL NG f . Execution Time in Minor Cycles 6400 6S00 6600 (25 nsf cycle) (100 nsf cycle) (100 ns/cycle) Jump Jump Jump Jump to to to to Kif Kif Kif K if f f BOOLEAN BXi BXi BXi BXi BXi BXi BXi BXi SHIFT LXi AXi LXi AXi NXi ZXi UXi PXi MXi 3 ADD FXi FXi DXi DXi RXi RXi 4 4 11 11 LONG ADD IXi IXi 3 © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 6 6 11/65 CONTROL DATA 6000 SERIES 260:121. 101 TABLE I: CENTRAL PROCESSOR INSTRUCTION LIST (Contd.) Mnemonic Execution Time in Minor Cycles 6800 6600 6~0 (25 ns/cycle) (100 ns/cycle) (100 n~/cycle) Description Functional Unit MULTIPLY FX! RXI DX! Floating product of Xj and Xl< to X! Round fioating product of Xj & Xl< to X! Floating'double precision product of Xj& Xl< to X! 10 10 10 Floating divide Xi by Xl< to X! Round fioatlng divide Xi by Xl< to X! No operation Count the nwnber of 1's In Xl< to X! 29 29 DIVIDE FX! RX! NO CX! 10 10 10 56 56 56 29 29 56 56 --- --- --8 68 5 5 5 5 5 8 / INCREMENT * Add SA! SA! SAl SA! SA! Set Set Set Set Set A! A! A! Ai A! to to to to to Ai Ai Bj Bi Xi + + + + + K compleme nt of K K complement of K K a a a a 3 a a 3 a a SA! SAi SA! SA! SA! Set Set Set Set Set A! A! Ai A! A! to to to to to Xi Xi Ai Aj Bj + cpmplement of K + Bk + Bi 3 a a 3 3 3 a a a a 5 5 5 5 5 SA! SBI SBI SBi SBi Set Set Set Set Set A! to Bj Bi to Aj + Bi to Aj + Bi to Bj + Bi to Bj + a a a a a a a a a a 5 5 5 5 5 SBI SBi SBi SBi SBi Set Set Set Set Set to to to to Bi to a 3 a a a a a 3 a a 5 5 5 5 5 SBI SBI SX! SX! SX! Set BI to Bi + Bk Set BI to Bi - Bk Set Xi to Ai + K Set X! to Bj + K a a a a a 3 a a a a 5 5 5 5 5 SX! SX! SX! SX! SX! Set Set Set Set Set 3 3 a a a 3 a a a a 5 5 5 5 5 SX! SX! SlG ? ? Set lG to Ai - Bk Set lG to Bi + Bk Set Xi to Bi - Bk Read Mass Core Write Mass Core a a a ? ? a a a ? ? 5 5 5 ? ? BI BI Bi Bi Xj Xj Xj Aj Aj - Bk + Bk Bk K complement of K K complement of K +K + complement of K + Bk + Bk - Bk Set Xi. to Aj + complement of K Xi to Bj + complement of K X! to Xi + Xi to Xj + Xi to Xi + X! to Aj + K complement of K Bk Bk 6 minor cycles to branch time for a branch to an instruction which is out of the stack. Interpretation of Descriptive Symbols A B j jk k K X 11/65 One of eight IS-bit address registers. One of eight IS-bit index registers; BO is fixed and equal to zero. Register specified by the 3-bit i portion of the instruction. Register specified by the a-bit i portion of the Instruction. Constant, indicating number of shifts to be taken (6 bits). Register specified by the a-bit k portion of the instruction. Constant, indicating branch destination or operand (18 bits). One of eight 60-bit operand registers. A (Contd.) AUERBACH ~ 260: 121. 102 INSTRUCTION LISTS TABLE II: PERIPHERAL AND CONTROL PROCESSOR INSTRUCTION LIST \ Description Mnemonic \ ( / Execution TIme In Major Cycle. * 1 Pass PSN LJM RJM UJN ZJN Long jump to m + (d) Return jump to m + (d) Unconditional jump d Zero jump d NJN PJN MJN SHN LMN Nonzero jump d Plus jump d Minus jump d Shift d Logical difference d 1 1 1 1 1 LPN SCN LDN LCN ADN Logical product d Sele oti ve clear d Load d Load complement d Add d 1 1 1 1 1 SBN LDC ADC LPC LMC Subtract d Load dm Adddm Logical product dm PSN PSN EXN RPN LDD Pass Logic~ difference dm 2-3 3-4 1 1 1 2 2 2 2 1 1 Pass Exchange jump 2 (mInimum) Read program address Load (d) 1 2 ADD SBD LMD STD RAD Add (d) Subtract (d) Logical difference (d) Store (d) Replace add (d) 2 2 2 2 3 AOD SOD LD! AD! SBI Replace add one (d) Replace subtract one (d) Load (d» Add «d» Subtract «d» 3 3 3 3 3 LMI S11 RAI AOI SOl Logical difference «d» Store «d» Replace add «d» Replace add one «d» Replace subtract one «d» 3 3 4 4 4 LDM ADM SBM LMM STM Load (m + (d» Add (m + (d» Subtract (m + (d» Logical difference (m + (d» Store (m + (d» RAM AOM SOM CRD CRM Replace add (m + (d» Replace add one (m + (d» Replace subtract one (m + (d» Central read from (A) to d Central read (d) words from (A) to m 4-5 4-5 4-5 6 (minimum) 5 plus 5/word CWD CWM AJM IJM FJM Central write to (A) from d Central write (d) words to (A) from m Jump to m if channel d active Jump to m if channel d inactive Jump to m if chaaael d full 6 (minimum) 5 plus 5/word 2 2 2 EJM IAN lAM OAN OAM Jump to m If chaaael d empty Input to A from channel d Input to (A) words to m from channel d Output from A on channel d Output (A) words from m on chanael d 2 2 4 plus l/word 2 4 plus l/word ACN DCN FAN FNC Activate channel d Di Beonneet channel d Function (A) on channel d FtUlction m on channel d 3-4 3-4 3-4 3-4 3-4 2 2 2 2 *The 6400/6600 Peripheral Processor Major Cycle time is 1 microsecond; the 6800's Major Cycle time is 250 nanoseconds. \ Interpretation of Descriptive Symbols d (d) «d» m m+ (d) (m+ dm (d» © Implies d itself (6-bit literal). Implies the contents of d. Implies the contents of the location speCified by d. Implies m itself (12-hit quantity)' used as an address. The contents of d are added to m to form an operand (jwnp address). The contents of d are added to m to form the address of the operand. Implies an lS-bit quantity with d as the upper 6 bits and. m as the lower 12 bits. 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 -£ 260: 141. 100 SImARD ~EDP CONTROL DATA 6000 SERIES DATA CODE TABLE - AUERBACH REPORTS DATA CODE TABLE Character Internal BCD* Tape and Printer BCD* Card Character Internal BCD* Card 0 00 12 0 P 47 47 11-7 1 01 01 1 Q 50 11-8 2 02 02 2 R 50 51 51 11-9 3 03 03 3 S 62 22 0-2 4 04 04 4 T 63 23 0-3 5 05 05 5 U 64 24 0-4 6 06 06 6 V 65 25 0-5 7 07 07 7 W 66 26 0-6 8 10 10 8 X 67 27 0-7 9 11 11 9 Y 70 30 0-8 A 21 61 12-1 Z 71 31 0-9 B 22 62 12-2 = 13 13 3-8 C 23 63 12-3 - (dash) 14 14 D 24 64 12-4 + 20 60 12 E 25 65 12-5 +0 32 72 12-0 F 26 66 12-6 33 73 12-3-8 27 67 12-7 ) 34 74 12-4-8 H 30 70 12-8 - (minus) 40 40 11 I 31 71 12-9 -0 52 52 11-0 J 41 41 11-1 $ 53 53 11-3-8 K 42 42 11-2 * 54 54 11-4-8 L 43 43 11-3 (space) 60 20 blank M 44 44 11-4 / 61 21 0-1 N 45 ·46 45 11-5 , 73 33 0-3-8 46 11-6 ( 74 34 0-4-8 * Octal representation of 6-bit BCD codes is shown. A AUERBACH • /' 4-8 G 0 11/65 Tape and Printer BCD* \ \ 1. 260:151. 100 STAND'" CONTROL DATA 6000 SERIES PROBLEM ORIENTED FACILITIES /AEDP AUERBAC~ - REPORTS ~ PROBLEM ORIENTED FACILITIES .1 .11 UTILITY ROUTINES Input files can be on either magnetic tape or disc file storage, and can be written in either binary or BCD form. Fixed or variable-length records can be sorted, in either ascending or descending sequence. Control cards can specify exits to user-supplied routines at various stages in the sort/merge process. Simulators of Other Computers IBM 7090/7094 Simulator Reference: . . . . . . . . preliminary information. Date available: . . . . . December 1965. De~cription: This simulator accepts 7090/7094 machine-language programs and converts them to instruction and data formats that are directly executable on any 6000 Series system. The maximum size object program that can be simulated is 32K 7090/7094 words. Standard input-output operations are simulated, and provisions will also be included to handle other I/O equipment, such as disc files, drums, and data cells. The simulator operates under the control of the SIPROS operating system and utilizes about 40, 000 words of 6000 Series Central Memory. In most cases, according to Control Data, the simulated programs run at approximately the same speed as the original programs on an IBM 7090. \ . 12 Simulation by Other Computers: . . . . . . . none. .13 Data Sorting and Merging No timing information for the 6000 Series Sort/ Merge has been released to date. . 14 Report Writing: . . . . . facilities will be provided both in the COBOL language and in the Linear Programming System (see Paragraph . 17) .15 Data Transcription 6000 Series Utility Programs Reference: . . . . . . . . 6000 Series Computer Systems Manual (preliminary edition) . Date available: ...... December 1965 . Description: Data transcription routines are contained in the 6000 Series library system (LIBRIOUS) and operate under control of the SIPROS operating system. These routines can be used as necessary by the SIPROS Executive, or they can be called for by operating programs, or they can be summoned by control cards to perform "off-line" data transcriptions. 6000 Series Sort/Merge Reference: . . . . . . . . 6000 Series Computer Systems Manual (preliminary edition). Record size: . . . . . . . not specified to date. Block size: . . . . . . . . not specified to date. Key size: . . . . . . . . . not specified to date. File size: . . . . . . . . . not specified to date. Number of tapes/ discs: . . . . . . . . . . 3 to 16 tapes, or minimum of one disc unit. Date available: . . . . . July 1966. Description: ( I ~- SIPROS assigns a Peripheral and Control Processor to perform each data transcription task and calls the designated routine from the library. The standard routines supplied include: Card to Card Card to Print Card to Tape Tape Comparison Card to Disk Tape to Card Tape to Print Tape to Tape Disk to Card Disk to Print Disk to Tape. The 6000 Series Sort/Merge package is a generalized program that is designed to function as an integral part of the SIPROS operating system. Incoming files on tape or disc units can be sorted as an independent operation or as an integrated subtask of a total processing job. The Sort/Merge program is baSically disc-oriented for efficiency of operation, but magnetic tape units can also be utilized, depending on disc availability at sort time. Optimized input-output routines have not been included in the Sort/Merge package, since it is assumed that all I/O operations will be overlapped with the execution of several other programs by the Central Processor. Internal sorting operations will take advantage of as much core and disc storage as is specified by parameter cards as being currently available. Merging is accomplished through use of a polyphase technique. Only the several sorting keys within each record need to be sorted; the data portions of the records can be stripped off at input time and later retrieved after the keys have been sorted into the proper sequence. Code conversion can also be specified by control card, permitting data transcriptions and code conversions to be performed during a single oper· ation. For example, the Card to Tape routine permits conversion from Hollerith to BCD, Hollerith to Display code, or no conversion (binary cards). Variously-coded magnetic tapes can be dumped in octal mode. .16 File Maintenance 6000 Series File. Manager Reference: . . . . . . . . preliminary information. Date available: . . . . . June, 1966. © 1966 AUERBACH Corporation and AUERBACH Info, Inc. 2/66 CONTROL DATA 6000 SERIES 260:151. 160 . 16 File Maintenance (Contd.) Description: The File Manager system for the 6000 Series provides a simplified method for controlling the storage, retrieval, usage, and modification of data files recorded on mass storage devices. The various facilities of the File Manager can be called for by means of system macro-instructions. Alternatively, these facilities can be utilized by means of control card statements entered in the input job stream. The control cards serve both to designate the files that are to be maintained and to specify the type of maintenance operation to be performed. The 6000 Series File Manager operates under control of the SIPROS operating system. The File Manager also makes use of SIPROS' I/O control routines, device assignment and memory allocation routines, and Peripheral Processor scheduling routines. All File Manager functions can be carried out by a single Peripheral Processor, but the use of additional Processors will increase the File Manager's efficiency. complete control language, and a report writer . LP-66 operates under control of the SIPROS operating system and is implemented in a combination of FORTRAN-66 and ASCENT programming languages. An optimization routine and other selected subroutines are called from the FORTRAN-66 library. The availability date for LP-66 is currently undetermined. .182 Matrix Algebra A Matrix Algebra package will be available to 6000 Series users in April 1966. Individual matrix manipulation subroutines are provided to aid in the solutiori of specific matrix handling problems. The supplied matrix operations include: Move, Transpose, Add, Subtract, Multiply, Invert, Eigenvalues and Eigenvectors, and facilities to solve simultaneous equations. .183 Statistical Programs The 6000 Series Statistical Programs package consists of four basic programs; Files and portions of files (as small as individual records) can be created, stored, displayed, dumped, deleted, and modified temporarily or permanently. In addition, the status of stored files can be determined and logged, and file directories can be altered. The File Manager will be usable with any of the following classes of mass storage devices: magnetic tapes (dumping and reloading only), drums, diSCS, auxiliary core storage, and data cells. .17 other • Basic Descriptive Statistics - computes mean, standard deviation, third and fourth moments, skewness, kurtosis, and associated standard errors for each of a series of variables. • Normal Probability Function - computes the ordinate or several other functions of the failarea probability of the normal distribution N for a given value of an argument. • Correlation Matrix - generates a matrix whose element aij is the correlation coefficient between the ith and jth variables. Eigenvalues and eigenvectors of the correlation matrix are also obtained to enable principal-components or factor analysis to be performed. • Random Number Generator - produces a stream of random, equi-probable decimal digits. Mathematical Subroutine Library Reference: • . . . . . . . 6000 Series Computer Systems Manual (preliminary edition). Date available: . . . . . April 1966. Description: The Mathematical Subroutine Library is a part of LIBRI6us, the 6000 Series Library System of I/O and Utility Systems. The Mathematical library contains a complete set of standard FORTRAN mathematical subroutines that have been specially developed to take advantage of the 6000 Series' advanced hardware. Considerations in the development of these subroutines have included the 60-bit data word, the 8-word instruction stack, the 24 central operating registers, and. the 10 Central Processor functional units (see Report Section 260:051). All mathematical subroutines are equally accessible to FORTRAN and ASCENT (Central Processor Assembly System) programmers. Among the available mathematical subroutines are the following: Square Root, Cube Root, Sin, Tan, Arctan, ArCSin, Exponential, and Logarithm. Report Section 260:161 contains a complete list of the mathematical functions available through use of the FORTRAN-66 language. No details are currently available concerning the execution speeds of these routines. .18 The Statistical Programs Package operates under control of the SIPROS operating system and will be available in March 1966. .184 PERT Several PERT programs are available for use with the 6000 Series. The NASA-FORTRAN PERTTIME n program has been converted for use with the 6000 Series, and a companion PERT-COST program is currently under development. In addition, Control Data will supply its own combined PERT-TIME/COST package which produces the standard PERT-TIME reports plus four PERTCOST reports: management summary, project status, financial plan and status, and manpower loading. Control Data's PERT-TIME will be available in June 1966; PERT-COST will be available in October 1966. .185 SIMSCRIPT Application Packages A compiler for the SIMSCRIPT simulation language will be provided for use with the 6000 Series and will be available in June 1966. No details concerning Control Data's SIMSCRIPT language and compiler are currently available. .181 Linear Programming System (LP-66) The 6000 Series Linear Programming System includes "technologically current" LP algorithms, a 2/66 ./ A AUERBACH '" ,/ 260: 161. 100 1. STANDARD /AEDP AUERBAC~ • CONTROL DATA 6000 SERIES PROCESS ORIENTED LANGUAGE FORTRAN 66 REPORTS PROCESS ORIENTED LANGUAGE: FORTRAN 66 I \ .1 GENERAL ... Control Data 6000 Series FORTRAN 66. .11 Identity: . 12 Origin: .13 Reference: . . . . . .14 Description . . . . . . . . . . Control Data Corporation .. FORTRAN 66 Programming System/Reference Manual, No. 60101500A. Several varieties of the FORTRAN language can be used with the Control Data 6000 Series. Early users of 6000 Series systems were supplied with a FORTRAN IV language and compiler that' runs under control of the interim-designed Chippewa operating system. Standard FORTRAN IV language facilities were provided, a~d compilation speeds up to 12,000 statements per minute were achieved. However, the efficiency of the generated object code was not high, and the many unique features of the 6600 and 6800 Central Processors were not effectively utilized. The language facilities of Chippewa FORTRAN IV include mixed-mode arithmetic, double-precision and complex variables, and the ability to intermix FORTRAN II statements whenever they are not inherently incompatible with FORTRAN IV. FORTRAN 66, however, is the official FORTRAN language for the Control Data 6000 Series. The FORTRAN 66 compiler has been specifically designed to take full advantage of the 6000 Series hardware. It operates under control of the SIPROS operating system and can utilize the extensive hardware and software facilities of the total system. FORTRAN 66 LANGUAGE ,/ ' '---- The FORTRAN 66 language is a greatly expanded, though completely compatible, version of FORTRAN 63, a dialect of FORTRAN IV implemented by Control Data for its 1600 and 3000 Series systems. The widely-used IBM 7090/7094 FORTRAN IV language is basically a compatible subset of FORTRAN 66, yet some incompatibilities do exist. Paragraph. 142 lists the few deficiencies of FORTRAN 66 relative to IBM's FORTRAN IV, and Paragraph. 143 lists the major extensions of FORTRAN 66 relative to the same 7090/7094 FORTRAN IV language. For those users who insist on coding in "pure" FORTRAN IV, Control Data has provided its FORTRAN 66 compiler with an optional running mode to handle programs written in ASA-standard FORTRAN IV. When the FORTRAN IV subsetcompiler is called for, an expanded diagnostic package can be provided because the FORTRAN IV compiler consumes less space in Central Memory. Control Data's implementation of FORTRAN 66 includes many of the newest and most powerful features of the FORTRAN language. Special emphasis is placed on both speed of compilation and object program efficiency. Listed below are some of the principal features of the FORTRAN 66 language/ compiler . • FORTRAN 66 includes all FORTRAN 63 facilities; hence, it is compatible with FORTRAN 63 and essentially with FORTRAN IV. • Assembly-language and FORTRAN 66 statements can be intermixed on a line-for-line level. Total communication between the two source languages is provided. FORTRAN statement numbers can be referred to in ASCENT (Central Processor Assembly System) instructions, and symbolic ASCENT location tags can be referred to in the FORTRAN statements. In a similar fashion, data values .computed by ASCENT instructions or generated by pseudooperations can be referenced as FORTRAN operands, and values computed by FORTRAN procedures can be used as arguments in ASCENT instructions. • Input-output buffering facilities can be selected to be performed automatically or under control of the FORTRAN programmer. Direct buffer control statements are provided, as well as several statements that check the status of input-output operations and buffer transfer activities. • Special ENCODE/DECODE statements are included to permit code and radix conversions to be performed while moving data through core storage. • 'Central Processor register names can be used directly as operands. This feature permits the programmer to perform computations from the central registers, eliminating the need for many redundant memory accesses. This feature also provides another communications link between the FORTRAN and ASCENT source languages. • FORTRAN 66 built-in functions and mathematical subroutines utilize specialized coding techniques that maximize the use of the 6000 Series' 60-bit word length and the parallel instruction execution facilities in the 6600 and 6800 Central Processors. Table II lists the basic library functions provided with FORTRAN 66. • An object code optimization algorithm is provided to permit debugged source programs to be recompiled in a manner that approaches the execution-time efficiency of machine-Ianguage-coded programs. When the FORTRAN compilation is performed in the optional optimization mode, the compiler performssimulations of various Central Processor instruction execution sequences in order to determine efficient scheduling of the 10 functional units © 1966 AUERBACH Corporation and AUERBACH Info, Inc. 2/66 CONTROL DATA 6000 SERIES 260: 161. 140 .14 Description (Contd.) object code. The Machine Mode compiler will normally not be used until the user at the remote terminal is reasonably certain that the program has been completely debugged. .141 Availability and to provide anticipatory loading of the 24 central registers. Paragraph . 143 lists several other important features included in the FORTRAN 66 language. FORTRAN 66 Compiler Control Data states that the FORTRAN 66 compiler, when operating in the optimization mode, generates object code that is at least 80% as efficient as good machine coding in the complex 6600/6800 Central Processors. Compilation speeds up to 10,000 statements per minute have been achieved when unoptimized object code is generated. No times are currently available for measuring the compilation speed of the FORTRAN 66 compiler when optimized object code is produced. Language specifications: . . . . . . . . . Compiler Preliminary version: .. Complete version: .. Time-sharing version: . . . .. .. April 1966. 3rd quarter 1967. / (1) Logical constants TRUE and FALSE cannot be defined. (2) Logical expressions cannot be used as parameters in function definitions or in CALL subroutine statements. (3) The settings of sense switches and sense lights cannot be altered during a program's execution. (4) The BLOCK DATA statement is not provided; however, any labelled COMMON data block can be initialized through use of the FORTRAN 66 DATA statement. Time-Sharing FORTRAN 66 .143 Extensions of FORTRAN 66 Relative to IBM 70901 7094 FORTRAN IV* (1) Numerous language capabilities are extended as indicated in Table I. (2) Mixed-mode arithmetic is permitted in logical and arithmetic expressions and in the formation of subscripts. (3) Assembly-language statements can be intermixed with FORTRAN 66 statements. (4) Hollerith-coded constants are permitted in arithmetic expressions. • Syntax analysis of the most recently entered FORTRAN statement within an average of three seconds of the statement's entry. (5) Logical bit-by-bit masking of variables by constants or other variables can be performed through use of the AND, NOT, and OR operators. • Interline diagnostics of previously-entered statements, categorizing the errors and indicating the degree of acceptability. • Start and stop control of the executing program at specified statements. (6) ENCODE and DECODE statements are implemented to facilitate code and radix conversions. • Console displays of symbolically-specified variables or arrays, or of the contents of symbolically-specified consecutive memory locations. (7) BUFFER IN and BUFFER OUT statements are included to increase overlapping of inputoutput data transfers. • Source statement insertion and deletion at any specified point in the program. • Listings of program segments or of the entire compiled program. • Complete system object-program diagnostics that can be displayed on console devices or printed as hard-copy documentation. (8) Checks for the status of input-output operations by designated I/O units are provided. Variations of the IF statement permit specific checks for operation-complete, operation-incomplete, end-of-file, end-of-tape, and parity errors. (9) Logical unit numbers can be specified for input-output operations. The Machine Mode FORTRAN compiler for 6000 Series Time-Sharing systems will provide all of the language facilities of FORTRAN 66 and will particularly emphasize the generation of efficient 2/66 December 1965. .142 Restrictions of FORTRAN 66 Relative to IBM 7090/7094 FORTRAN IV* Control Data estimates that the size of the complete compiler plus the Central Processor and Periphera,l Processor assemblers will be approximately 8 to 12 thousand 60-bit words. The assemblers are normally loaded with the FORTRAN compiler to facilitate the handling of source programs that use intermixed FORTRAN and assembly-language statements. Working storage and symbol table requirements can consume another 12 to 16 thousand words of storage if the compiler is to perform efficiently. Included in Control Data's scheduled software for support of integrated Time-Sharing 6000 Series systems is an Interpretive Mode FORTRAN 66 compiler and a companion Machine Mode compiler. The Interpretive Mode FORTRAN compiler will be written in re-entrant coding to permit efficient utilization of core storage and to minimize program swap time. In addition to the full FORTRAN 66 capabilities, the Interpretive Mode FORTRAN system will provide remote terminal users with the following facilities: April 1965. / * Detailed specifications of the IBM 7090/7094 FORTRAN IV language are provided in Report Section 408:162. A (Contd. ) AUERBACH '" 260:161. 143 PROCESS ORIENTED LANGUAGE: FORTRAN 66 TABLE I: COMPARATIVE FORTRAN LANGUAGE CAPABILITIES FORTRAN IV (7090/7094) FORTRAN 66 Sense lights: Sense switches: Integer magnitude: Integer accuracy: Single-precision magnitude: Single-precision accuracy: Double-precision magnitude: Double-precision accuracy: Statement numbers: Variable names: Continuation cards: Character set: Multiple replacement statements: Multiple state;ments per line: 60 (simulated) 60 (simulated) 259-1 18 digits 4 6 235-1 10 digits 1O±308 l(r~38 15 digits 8 digits 1O±308 1O±38 29 digits 1 to 99999 1 to 8 alpha. chars. no limit (a statement may have up to 660 operators, delimiters, and identifiers) A-Z; 0-9; 10 symbols; blank 16 digits 1 to 32767 1 to 6 alpha. chars. 1 to 19 A-Z; 0-9; 9 symbols (no $); blank yes no yes no .143 Extensions of FORTRAN 66 Relative to IBM 7090/7094 FORTRAN IV (Contd.) (10) Subroutines can be entered at any specified entry points. (11) In the logical IF statement, an explicit destination can be specified for the false condition as well as for the true condition. (12) Complex expressions can be used in the three-way branching IF statement, although only the real part is tested for zero. (13) The control variables within a DO loop can be dynamically altered during the execution of the loop. In addition, primary DO loop control is tested before the loop is initially entered, permitting all passes through the loop to be bypassed when appropriate. \ © 1966 AUERBACH Corporation and AUERBACH Info, Inc. 2/66 260:161. 144 CONTROL DATA 6000 SERIES TABLE II: STANDARD FORTRAN 66 LIBRARY FUNCTIONS ABSF(X) XABSF(i) INTF(X) XlNTF(X) } } Actual Parameter Type Definition Form Absolute Value Real Integer Real Integer Truncation, integer Real Real Real Integer MODF(XI, X 2) Xl modulo X2 Real Real XMODF(i 1, i2) i1 moc\ulo i2 Integer Integer Integer Real ..... MAXOF(il, i2 •... ) Real Heal XMAXOF(i}, i2, ... ) Integer Integer XMACIF(XI' X 2, ... ) Real Integer MINOF(iI. i 2, ... ) Integer Real MINIF(XI, X2, ... ) Real Real Integer Integer Real Integer MAXIF(XI, X2, ... ) Determine maximum argument Determine minimum argument XMINOF(il,i2,' .. ) XMINIF(XI' X2, : .. ) SINF(X) Sine X, raciians Heal Real Real COSF(X) Cosine X, radians Real TAN F (X) Tangent X, radians Real Heal ASINF(X) Arcsine X, radians Real Real ACOSF(X) Arccos, X, radians Real Real ATAN F (X) Arctangent X, radians Real Heal TANHF(X) Hyperbolic tangent X, raciians Real Heal SQRTF(X) Square root of X Real Real LOGF(X) Natural log of X Real Real EXPF(X) e to Xth power Real Real SIGNF(XI, X2) Sign of X2 times IXII Real Real XSIGNF(iI, i2) Sign of i2 times lill Integer Integer Real Real Integer Integer Real Real Integer Real DIMF(XI, X2) {IfIf XDIMF(il, i2) {IfIf ili I ::;> Xl > X2: Xl - X2 Xl .:::; X2: 0 i2: il - i 2 i 2: 0 CUBERTF(X) Cube root of X FLOATF(I) Integer to Real conversion RANF(N) Generate random number -Real -Integer (Repeated executions give uniformly distributed numbers) +Real + Integer XFIXF 2/66 Mode of He suit } } Real Integer POWER(X I , X2) Real to Integer conversion X l x2 ITOJ(I, J) IJ Integer, Integer Integer XTOI(X, I) Xl Real, Integer Real ITOX(I, X) IX Integer, Real LENGTHF(i) Number of words read on unit i A AUERBACH '" Real Real, Real Integer Integer Real Real Integer /' 260: 162. 100 ~ ""OARD AEDP \, AUERBAC~ • CONTROL DATA 6000 SERIES PROCESS ORIENTED LANGUAGE COBOL R[PORTS PROCESS ORIENTED LANGUAGE: COBOL ( ". .1 GENERAL .11 Identity: . . • . . . . . . . 6000 Series COBOL. • 12 Origin: • . . . . . . . . . . unspecified subcontractor. .13 Reference: . . . • . . . . Control Data 6000 Series Preliminary Technical Information Manual. .14 Description Control Data plans to supply for its 6000 Series systems a COBOL language that will include all the features of COBOL-61 Extended, plus all the language facilities of COBOL-65 as recently approved by the Department of Defense. The COBOL compiler will be written by an independent software house and will probably be available in mid-1967. Like all other software systems provided for use with the 6000 Series, the COBOL compiler will utilize the facilities of and operate under control of the SIPROS operating system in a multiprogramming environment. A complete listing of language specifications for 6000 Series COBOL has not been released to date. However, Control Data has offered the following language features as representative samplings from the extensive facilities to be provided in its new COBOL language: • • I" The SEGMENTATION feature allows the programmer to subdivide his program into various logical segments. When the executing object program requires additional program segments, they are loaded automatically by the SIPROS operating system. The library control statements COpy and INCLUDE permit access to an open-ended COBOL library. These statements enable stored portions of the Environment, Data, and Procedure Divisions to be retrieved from the library at compilation time and to be inserted in line with the source program. • The source-language debugging verbs MONITOR, TRACE, and DUMP provide comprehensive diagnostics at programmer-specified points during the execution of the object program. • The COBOL user can specify the collating sequence to be followed during the execution of each object program. This facility will ease the conversion problems normally encountered when attempting to compile and execute COBOL programs written for computers with internal characteristics that differ from the compiling computer . • The SEARCH verb and its several options facilitate table lookup operations. • The SET verb provides the user with direct control of the central processor's 24 operating registers. • The Report Writer package permits the programmer to generate printed reports by simple data and report format specifications. The verbs GENERATE, INITIATE, and TERMINATE control the Report Writer's operations. • The Mass Storage File Descriptor and several new input-output verbs provide the COBOL programmer with direct control over the storage and retrieval of data files written on mass storage devices. • The ADD, SUBTRACT, and MOVE verbs include the CORRESPONDING option. • The SAME AREA clause permits the programmer to specify that two or more files are to use the same input-output memory area. • The special symbols ** and t specifyexponentiation in arithmetic expressions, and the symbols ~ and ~ can be used in relational expressions. Control Data's 6000 Series COBOL will also implement a number of features originally listed as "electives" in the D. O. D. COBOL-61 language specifications. Table I presents a partial list of these features. Compiler The 6000 Series COBOL compiler will be a threepass translator, including an optional objectcode optimization pass. The compiler will emphasize efficiency, both in the compilation process and in the object code generated. Control Data expects that compilation speeds of up to 6, 000 statements per minute will be achieved when compiling on the 6600 computer system. .141 Availability Language: ........? Compiler: . . . . • . . . . mid-1967. ( © 1966 AUERBACH Corporation and AUERBACH Info, Inc. 2/66 260: 162. 141 CONTROL DATA 6000 SERIES TABLE I: PARTIAL LIST OF COBOL-61 ELECTIVES TO BE IMPLEMENTED IN 6000 SERIES COBOL Key No.* 1 2 3 4 5 6 Elective Comments Characters and Words Formula characters Relationship characters Semicolon Long literals Figurative constants Figurative constants +, -, *, /, **, =, >, <, <" >. Can be usedfor punctuation. Maximum size is 4,095 characters. HIGH or LOW BOUND(S) are available. HIGH or LOW VALUE(S) are available. 14 20 Record Description Item length Conditional ranges 22 24 25 26 Verbs COMPUTE ENTER INCLUDE USE 27 Verb Options LOCK 28 MOVE CORRESPONDING 30 32 37 38 39 ADVANCING Formulas Complex conditionals Complex conditionals Conditional statements 40 Environment Division SOURC E-COMPUTER 41 OBJECT-COMPUTER 42 SPECIAL-NAMES 43 45 FILE-CONTROL I/O CONTROL Computer description can be given, with MEMORY SIZE specification. Computer description can be given, with MEMORY SIZE specification. Hardware devices and their status conditions can be assigned special names. Library descriptions can be copied. Library control sections can be copied. 48 49 Special Features Library Segmentation Library routines can be called. Program segmentation is permitted. Variable-length items can be specified. VALUES can be ascribed to conditionals. Algebraic formulas can be used. Non-COBOL languages can be entered. Library routines can be called. Non-standard I/O error and label handling routines can be used. Locks rewound tapes and· files on disc storage. Commonly named items in a group can be moved. Paper advance can be specified. Algebraic formulas can be used. ANDs and ORs can be intermixed. Nested conditionals can be used. IF, SIZE ERROR, AT END, ELSE (OTHERWISE) can be followed by an imperative statement. * See Users' Guide, page 4:161. 300. 2/66 t. A AUERBACH '" 260: 171. 100 , \ 1&• AUERBACH SUNDUD EDP CONTROL DATA 6000 SERIES MACHINE ORIENTED LANGUAGE ASCENT REPORTS MACHINE ORIENTED LANGUAGE: ASCENT .1 GENERAL . 11 Identity: ••••...•.. ASCENT - Assembly --§ystem, CENTral Processor. .12 Origin: . . • • • . . . . . . Control Data Corporation. .13 Reference: • . . . . . . . ASCENT Programming System/Reference Manual, No. 60101600A. .14 Description .141 General Facilities The ASCENT language is a symbolic, machineoriented language that is used in writing assemblylanguage-level programs for the Central Processors of 6000 Series computer systems. Peripheral Processor programs are written in another assembly language, ASPER, which is described in Report Section 260:172. ASCENT provides the programmer with direct, simplified acess to the 6000 Series hardware features and to the many system control facilities of the SIPROS operating system (described in Report Section 260:191). Among the most useful features of the ASCENT assembly system are the following: • • Use of a powerful and flexible macro-instruction system that will reduce the time required for program coding. Provisions to relegate all input-output control operations to the SIPROS operating system. o Use of a pseudo-operation system for assembler control. • • I \ Ability to intermix ASCENT and FORTRAN statements on a line-for-line basis. Both ASCENT and FORTRAN refer to the 24 Central Processor registers by the same register names. Ability to call ASPER Peripheral Processor routines from a library or from own-coding appended to the ASCENT program. • Access to a complete subroutine library, the contents of which are called during program execution. . 142 Instruction Format I ~- / The ASCENT language uses one basic instruction format that consists of an 8-character instruction location symbol (optional), a variable-length Opcode (operation code) field, and up to two symbolic addresses or literals. Provision is also made for inclusion of the programmer's comments. Up to six symbolic instructions can be placed on each source card. The mnemonic Opcode generally consists of a oneor two-letter symbolic code and a Central Processor register designation which indicates the register that is to receive the action or the result of the instruction. The address fields can contain the actual names of the central registers to be used in executing the instruction. Thus, the ASCENT instruction. SA3 = X5 + B2 is interpreted as meaning Set Address Register 3 equal to the sum of the contents of Operand (X) Register 5 and Index (B) Register 2. This example also illustrates the way in which the arithmetic operators +, -, *, and / can be used in conjunction with an abbreviated mnemonic code to define a computational operation. These operators can also be used in address modification operations. Mnemonic operation codes are provided for every Processor instruction. Many instructions include the facility for use of literals. Literal data can assume any of the following forms: • Constant - decimal integers, octal digits, single-precision floating-point, complex, or double-precision floating-point. • Symbol any arrangement. of numbers and letters that contains no more than 8 characters. • Symbol:!:I - where I is an integer, octal, or symbolic constant. • Symbol-Symbol - another form of address modification. Table I presents sample coding in the ASCENT assembly language, illustrating various types of symbolic Central Processor instructions. . 143 Macro Instructions The ASCENT language provides it full complement of system macros and facilities to permit the use of user-supplied macro-instructions. The system macro-instructions provide the communication links between a Central Processor program and the ten Peripheral Processors. Most system macros give the programmer the capability to direct the system's input-output operations, but other macros are available to request equipment assignment, to check the status of external operations, to control the use of program overlays, and to coordinate the interrelationships that can exist between Central Processor and Peripheral Processor programs. Table II lists the standard system macros supplied with the ASCENT assembly system. As an aid to efficient multiprogramming, each system macro can be executed in a buffered or nonbuffered mode. In the non-buffered mode, with the letter "w" appended to the macro code, the associated Central Processor Program waits until the macro-operation is completed or aborted. (Control is transferred to SIPROS during this delay, permitting other Central Processor programs to be initiated.) In the buffered mode, the macro code is © 1966 AUERBACH Corporation and AUERBACH Info, Inc. 2/66 260:171. 143 CONTROL DATA 6000 SERIES TABLE I: SAMPLE ASCENT CODING START START 1 START2 BX6 BX4 FX7 BX3 EQ SA7 SA7 NZ RJ RDC SB1 LXI SB6 JP Code RQT~ DRT~ SFFN SFBN WFMW RWLW RWUW FSPW BSP~ RFC~ RFBW WRCW WRBW RDHW RDRW WRDW SSPW DSPW FC7~ FC8W MC~ MC2~ MC3W MC4W MC5W REMARKS INSTRUCTION LOCATION Xl -X3 X6*X4 -X4 +X1 B5 B2 AB B2 + DATA DATA Xl ABC SUB 1, ST, (BA) , (BA + 8),8,2 SA2 DATA+1 1 $ MX2 48 6 $ -8 $ B6 + DATA SA5 B2+BETA $ JP AB+2 $ SB7 B5-B6 TABLE II: ASCENT SYSTEM MACRO INSTRUCTIONS Meaning Code Request tape assignment from system. Release tape back to system. Search file mark forward. Search file mark backward. Write file mark. Rewind tape to load point. Rewind tape for unload. Forespace. Backspace. Read tape forward coded mode. Read tape forward binary mode. Write tape coded mode. Write tape binary mode. Read record and hold data on disc. Read record and release data on disc. Write record on disc. Single space printer. Double space printer. Select Format Channel 7. Select Format Channel 8. Select Monitor Channel 1Select Monitor Channel 2. Select Monitor Channel 3. Select Monitor Channel 4. Select Monitor Channel 5. MC6}y CMC}y SPA}y PRN!y PCH!y RDC!y DSR!y DSLW DHR}Y DHL}Y RDP}y RTY!y WAI}Y TPP}y I ROMN DRM!y RQDW DRDN LOAD .143 Macro Instructions (ConW.) used without the letter "W". In this case the program that initiated the system macro can continue processing while the macro-operation is concurrently being processed in a Peripheral Processor. In the buffered mode of operation, the Central Processor program must do its own checking to determine when the asynchronously-processed macrooperation has been completed. Meaning Select Monitor Channel 6. Clear Monitor Channels 1 - 6. Suppress space after next print. Print single line or multiple lines. Punch cards. Read cards. Display on right scope for system time limit. Display on left scope for system time limit. Display on right scope and hold indefinitely. Display on left scope and hold indefinitely. Remove display. Read console typewriter. Check status word. Transfer program SYMBOL from CM to PP memory and begin execution with first ASPER instruction. Hequest memory. Release memory. Request disc space. Release disc space. Load segment SYMBOL. the assembler and over the form and contents of its output. Several pseudo-operations are also provided to direct the assembler to perform specified code and radix conversion operations on lists of data. Table III is a list of the standard pseudooperations available with the ASCENT assembler. .145 ASCENT Translator The ASCENT translator (i. e., the program that performs the assembly) operates under the control of SIPROS in the standard 6000 Series multiprogramming and multiprocessing environments. Because a single translator program is used throughout the 6000 Series, identical (and therefore unoptimized) object code is produced for the 6400 Central Processor and the more advanced 6600/ 6800 Central Processors. The listing generated by the translator includes conventional assemblylanguage error indications. It also includes an assembly summary report that provides information such as the number of errors detected, the number The programmer can define his own macro routines through the use of a few simple pseudo-operation statements. After the new routine is named and its list of parameters specified, the programmer codes the macro routine in exactly the same manner as he codes the other sections of the ASCENT program. .144 Pseudo-Instructions The ASCENT language includes conventional assembler-control statemeJrts to provide the programmer with some control over the operations of 2/66 .X1 TO X6 .-X3 TOX4 · FLOATING X6*X4 to X7 .X1+COMP. X4 TO X3 .IF B5= B2, GO TO AB · STORE X7 TO DATA + B2 • STORE X7 TO BO + DATA · IF Xl NOT ZERO, GO TO ABC · RETURN JUMP TO SUB . LIST . PACKED CARD · MAXIMUM 6 PER CARD · BEGIN REMARKS WITH PERIOD .JUMP TO B2+BETA A (Contd.) AUERBACH '" /' MACHINE ORIENTED LANGUAGE: ASCENT TABLE III: 260:171. 145 ASCENT PSEUDO-INSTRUCTIONS MEANING OPCODE ASCENT END ASPER SUBROUTINE BSSD BSS BSSZ I \ EQU DPC BCD CON LIST SPACE EJECT Defines CP program Defines end of CP program Defines PP routine Defines subroutine name Reserves disc space Reserves Central Memory region Reserves Central Memory region and presets it to zero Equates a symbol to a value Inserts display-coded characters into program Inserts BCD characters into program Defines constants in program Controls side-by-side listing Spaces sidc-by-side listing Ejects page on side-by-side listing .145 ASCENT Translator (Contd.) .3 LABELS of symbols assigned, the length of the ASCENT program, the lengths of any ASPER programs that may have been included, and a list of symbols that are undefined, duplicated, or not referenced. .31 Gcneral . 15 Publication Date: • • • • . . . . . . . April 1965. . 312 Common label formation rule: .313 Reserved labels For operand registers: . . . . . . . For index registers:. For address registers: . . . . . . . . 314 Other restrictions: . . . . 315 Designators: . . • • . . . . 316 Synonym s permitted: .. . 16 Delivery Date: •••.•. ? .2 LANGUAGE FORMAT .21 Diagram: • 22 Legend Location: . . see Table I for an example of ASCENT coding. •.•• assigns a symbolic name to a statement. Instruction Opcode: •.••••.•. defines a machine instruction code or a pseudo-code. Address: • . . . • . . . . supplies the instruction with appropriate operands that consist of either a register name, two register names connected by an arithmetic operator, or a register name and a constant connected by an operator. Remarks: . . . used only for programmersupplied comments. .23 Corrections: .24 Special Conventions .311 Maximum number of labels: ..•. · yes; 8 or fewer alphameric characters . Xo throughX7 . BO through B7. AO through A 7 . none • none . yes; EQU pseudo . .4 Universal Labels Existence: ..••..•. mandatory if referenced by another instruction. Formation rule First character:. · alphabetic. Last character: . · alphameric. Others: . . . . . . . . · alphameric. Number of characters: . · 1 to 8. Local Labels Region: . . . . . . . . · all library routines and all routines that are local to a subprogram or overlay segment. Existence: . . . . · mandatory if referenced by another instruction . Formation rule: . · same as for universal labels. DATA .41 Constants .32 .33 ••.••• no special provisions. • 241 Compound addresses: • joined by the arithmetic operators+, -, *, and/. .242 Multi-addresses: .••. separated by the space character. .243 Literals: ••.•.•.•. enclosed within parentheses • . 244 Special coded addresses: . . . . . . . * represents the current value of the location counter • . 245 Others: . • • • • . . . . . $ indicates the start of the next instruction on a multiple -instruction source card. •. determined by individual installations . .411 Maximum size constants: Integer Decimal: ..••••• 18 decimal digits. Octal: ••••••••• 20 octal digits. Fixed numeric: .•.. not available. Floating numeric (single precision) Decimal: .•••••• 15 and 3 decimal digits. Floating numeric (double precision) - © 1966 AUERBACH Corporation and AUERBACH Info, Inc. 2/66 260: 171. 411 CONTROL DATA 6000 SERIES .411 Maximum size constants: (Contd.) Decimal: •••••••• 29 and 3 decimal digits. Complex numeric Decimal: .•••••• 2 single-precision floatingpoint numbers. Alphabetic: ••••••• not available. Alphameric: .••..• not available • • 412 Maximum size literals: same as constants; see Paragraph.411. .42 Working Areas • 51 Direct Operation Codes 43. none. none. 1. none. Translator Control .541 Method of control Allocation counter: •. EQU pseudo instruction. Label adjustment: .• by arithmetic operators and literal or symbolic data. Annotation: ••••••. Remarks field on coding sheet. . 542 Allocation counter Set to absolute: •... not possible. Set to label: •••••• EQU pseudo instruction. Step forward: ••••• not possible. Step backward: •..• not possible. Reserve area: .•••• BSS and BSSZ. .543 Label adjustment Set labels equal: •••• EQU. Set absolute value: .• not possible. Clear label table: ••• ? 2/66 Special Functions · 64 SFF - Search File Mark Forward. Elaborate: .•••••• TPP - Transfer control from Central Memory program to a Peripheral Processor program. .523 New macros: .•••••• inserted through use of MACRO pseudo-instruction. • 53 Interludes: .••••••• none • .54 Special Arithmetic: ••• none. • 62 Overlay Control / Data Editing .641 Radix conversion: ••• binary to decimal; jecimal to binary. • 642 Code translation: .••. BCD to or from Hollerith; BCD to or from Display Code. .643 Format control: ••••• own coding required. · 511 Mnemonic Existence: . . • . • . . alternative. Number: ••••.••.. 84. Example: ••••.••• RJ - Return Jump. · 512 AbsoluteExistence: . . . • . . . . alternative. Number: . . . . . . . . . 71. Example: . . . . . . . . 10 - Move Xj to Xi' .52 Macro-Codes .521 Number available Input-output: •...•. Arithmetic: ..•.•.• Math functions: .•.. Error control: .•••• Res~arts: .•.••••• .522 Examples Simple: ••••••••. .61 .631 Facilities: . • . . . . • . each Central Processor program can have a basic segment and one additional segment residing in Central Memory at any given time • Further segments must be overlaid as required • • 632 Method of call: .••••. LOAD pseudo-operation. • 431 Data layout: .••••••• defined in pseudo and macro instructions. . 432 Data type: •.•••.••• defined in macro instructions • . 433 Copy layout: •••.••. not available. PROCEDURES SPECIAL ROUTINES AVAILABLE .63 Input-output Areas .5 •6 .621 Facilities: •••••••• standard FORTRAN functions are available in the subroutine library • .622 Method of call: .••.•• CALL pseudo-instructions. • 421 Data layout Implied by use: ..•. no. Specified in program: yes, by use of macro instructions. .422 Data type: ••••••••• tabulated in program. .423 Redefinition: ••••••• not possible. .43 • 544 AnnotationComment phrase: ••• written alongside the symbolic instruction. Title phrase: .••••• included in header card. .65 Input-Output Control: • handled by system macroinstructions. · 66 Sorting: ..•••••••• not available in ASCENT --language. .67 Diagnostics: ••••... no object-program diagnostics can be embedded through ASCENT" instructions. .7 LIBRARY FACIliTIES .71 Identity: •••••.•••• System Disk Library. • 73 Storage Form: .•.••. disc file • .74 Varieties of Contents: • SIPROS system control and I/O routines; system and user-supplied subroutines. .75 Mechanism .751 Insertion of new item: .•••••••.•. ? .752 Language of new item: ••••••••••• ASCENT, ASPER, and/or FORTRAN. .753 Method of call: •••••. CALL pseudo-operation. .76 Insertion in Program · 761 Open routines exist: .. yes. .762 Closed routines exist: • yes • .763 Open-closed is optional: •••.•••• yes. .764 Closed routines appear once: •••••• yes. .8 MACRO AND PSEUDO TABLES • 81 Macros: •••••••••• see Table II . .82 Pseudos: •••••.••• see Table A AUERBACH '" / m. 260:172.100 1& AUERBACH STANDARD EDP CONTROL DATA 6000 SERIES MACHINE ORIENTED LANGUAGE ASPER REPORTS ~ MACHINE ORIENTED LANGUAGE: ASPER .1 GENERAL .11 Identity: . . . . . . . . . . ASPER - Assembly System, --PERipheral Processors. .12 Origin: . . . . . . • . . • Control Data Corporation. .13 Reference: . . . . . . . • ASPER Programming System/Reference Manual, No. 60101700A. . 14 Description .141 General Facilities The ASPER language is a symbolic, machineoriented language that is used in writing assemblylanguage-level programs for the ten Peripheral and Control Processors that are included in every 6000 Series computer system. Central Processor assembly-language programming is done in the ASCENT language (described in Report Section 260:171). It is generally not necessary for users to write programs for the Peripheral Processors because their tasks are usually directly assigned by the SlPROS operating system. However, direct programming of these Processors in the ASPER language can be desirable if, for example, a specialized, independently-operating utility routine is planned, or if non-standard supporting tasks are to be assigned to the Peripheral Processors to operate asynchronously with the main Central Processor program. Some of the principal features of the ASPER assembly system are the following: o Aj:cess to all symbols within the ASCENT or FORTRAN source-language Central Processor program with which the ASP ER program is associated. This facility also provides access to variables in COMMON Central Memory storage. • Ability to reserve storage blocks in Central Memory for private use by the associated Peripheral Processor program. • An overlay control system to assist in the efficient utilization of the relatively small Peripheral Processor memory units (4,096 12-bit words each). • A macro instruction system to permit the use of other Peripheral Processors in performing system-supervised input-output operations. • Other system macros to request loading of other Peripheral Processor programs, a facility that permits each Peripheral Processor to share in the system control functions of the SlPROS operating system. I \ .142 Instruction Format The ASPER language uses one basic instruction format that includes an optional 8-character instruction location symbol, a mnemonic or machine language Opcode, an address field (whose content and length vary according to the type of instruction), and a remarks field for programmer's comments. The address portion of the instruction can consist of a symbol, a symbol modified by the arithmetic operators + and - used in conjunction with a constant, a symbol minus another symbol, or a simple constant. Up to six symbolic instructions can be placed on each source card . The third letter of the three-letter mnemonic operation code designates the type of address that is to be used in interpreting the symbolic instruction, as shown below: Mnemonic ends in N: . . . . . . . . . . . . . no address; direct 6-bit operand. D: . . . . • . . . . . . . . direct address. I: . . • . . . . . . . . . . indirect address. M: . . . . . . . . . . . . . indexed direct address. C: . . . . . . . . . . . . . no address; direct 18-bit operand. A complete list of the standard ASPER symbolic Peripheral Processor instructions is shown on page 260:121.102, in the Instruction List section. Of the 62 listed instructions, it should be noted that most fall into a few basic functional categories such as Add, Subtract, Load, etc. The repertoire is not exceptionally rich. .143 Macro-Instructions The ASPER language provides a comprehensive set of system macro-instructions that, in conjunction with the pseudo-instructions, serve to integrate the ASP ER program into the overall 6000 Series system and to coordinate the functions of the ASP ER program with the many control functions of the SlPROS operating system. Specifically, the system macros provide direct communication links between the ASPER routine and the system-control Peripheral Processors in which various parts of SlPROS reside. (See Report Section 260:191 for a description of the SlPROS system.) The ASPER macro-instructions direct SlPROS to perform input-output operations, to assign I/O devices and reserve core storage areas, to check the status of external operations, to load program overlays, and to provide scheduling services for use of the I/O channels. Table I lists the standard ASPER system macros and identifies their usage. Most of the system macros provide a choice of buffered or non-buffered modes of operation. In the non-buffered mode, with the letter "W" appended to the macro operation code, the processing is discontinued until the macro-initiated operation is completed or aborted. In the buffered mode, without the addition of "w" to the macro code, the ASPER routine continues processing while the © 1966 AUERBACH Corporation and AUERBACH Info, Inc. 2/66 260: 172. 143 CONTROL DATA 6000 SERIES TABLE I: ASPER SYSTEM MACRO-INSTRUCTIONS Code RQT~ DRT~ SFFW SFB~ WFM:,!£ RWLW RWUW FSP:,!£ BSP:,!£ RFC:,!£ RFB!£" WRC:,!£ WRBW RDHW RDR!£" WRD~ SSP::,!£ DSP::,!£ FC7~ FC8:,!£ MC1:'!£ MC2:,!£ MC3W MC4W MC5W MC6~ Meaning Code Request tape assignment from system Release tape back to system Search file mark forward Search file mark backward Write file mark Rewind tape to load point Rewind tape for unload Forespace Backspace Read tape forward coded mode Read tape forward binary mode Write tape coded mode Write tape binary mode Read record and hold data on disc Read record and release data on disc Write record on disc Single space printer Double space printer Select Format Channel 7 Select Format Channel 8 Select Monitor Channel 1 Select Monitor Channel 2 Select Monitor Channel 3 Select Monitor Channel 4 Select Monitor Channel 5 Select Monitor Channel 6 Meaning CMC::,!£ SPAW PR~ PCH:,!£ RDC:,!£ DSR!£" DSL:,!£ DHR:,!£ DHLW RDP!£" RTy!£" WAIY{ TPP:,!£ RQMY{ DRMY{ RQDY{ DRDW RQC~ DRCW DRPP LOAD Clear Monitor Channels 1 - 6 Suppress space after next print Print single line or multiple lines Punch cards Read cards Display on right scope for system time limit Display on left scope for system time limit Display on right scope and hold indefinitely Display on left scope and hold indefinitely Remove display Read console typewriter Check status word Transfer program SYMBOL from CM to PP memory and begin execution with first ASP ER instruction Request memory Release memory Request disk space Release disk space Request I/O channel Release I/O channel Release Peripheral Processor Load segment SYMBOL .143 Macro-Instructions (Contd.) .15 Publication Date: . . . . April 1965 . macro-initiated routine is being processed asynchronously in another Peripheral Processor. In the buffered mode, the ASPER routine must perform its own checks to determine when the macrooperation is completed. Facilities to provide programmer-defined macro routines are not implemented in the ASP ER language . • 144 Pseudo-Instructions The 17 standard ASPER pseudo-instructions provide the means for the programmer to direct the assembler to perform certain functions. Among the functions controlled by these pseudo-instructions are overlay and subroutine identification and definition, memory assignments according to type (absolute or relocatable), reservation of storage areas on the System Disk and in specified areas of Peripheral Processor and Central Memory, conversion of data codes and radices, and formatting of the output assembly listing. A listing of the ASPER p.seudo-instructions is presented in Table II. . 145 ASPER Translator . 16 Delivery Date: . . . . . . ? .2 LANGUAGE FORMAT .21 Diagram Like all standard 6000 Series software packages, the ASPER translator (or assembler) operates under the supervision of SIPROSin a multiprogramming and multiprocessing environment. The listing generated by the translator includes conventional assembly-language error indications. It also includes an assembly summary report that provides information such as the number of errors detected, the number of symbols assigned, the length of the associated ASCENT Central Processor program, the length of the ASPER program, and a list of symbols that are undefined, duplicated, or not referenced. 2/66 A Location .22 Opcode Address Remarks Legend Location: • . . . . . . . . assigns a symbolic name to a statement. Opcode: • . . . • . . . • . defines a machine instruction code, a macro code, or a pseudo code. Address: . • . . • . . . . specifies a direct or indirect operand address, or a direct operand. Remarks: • . . . . . . • . used for programmersupplied comments. .23 Corrections: . . . . . . . no special provisions • · 24 Special Conventions .241 Compound addresses: • joined by the arithmetic operators + and -. · 242 Multi-addresses: ..•• not permitted. .243 Literals: • . • • . . . . . enclosed within parentheses. • 244 Special coded addresses: . . . . . • . * represents the current value of the location counter. .245 Others: •..•••...• $ indicates the start of the next instruction on a multiple-instruction source card. (Contd. ) AUERBACH em 260: 172.300 MACHINE ORIENTED LANGUAGE: ASPER TABLE II: ASPER PSEUDO-INSTRUCTIONS OPCODE ASPER SUBP ORG ORGR BSSD BSS BSSZ BSSCM EQU DPC BCD CON COND END LIST SPACE EJECT .3 \ " MEANING Defines PP program Defines overlay Assigns program words to direct locations, nonrelocatable Assigns program words to nondirect locations, relocatable Reserves disc space Reserves Peripheral Memory region Reserves Peripheral Memory region and presets it to zero Reserves Central Memory region Equates a symbol to a value Inserts display-code characters into program Inserts BCD characters into program Constructs 12-bit constants Constructs IS-bit constants Defines end of PP program Controls side-by-side listing Spaces side-by- side listing Ejects page on side-by-side listing LABELS .337 Labels for variables: . same as procedures. .31 General . 311 Maximum number of labels: . . . . . . determined by individual installations . . 312 Common label formation rule: .. yes; S or fewer alphameric characters. . 313 Reserved labels: .. none. . 314 Other restrictions: ... none. . 315 Designators: . . . . . . . none. • 316 Synonyms permitted: . yes; EQU pseudo. .32 Universal Labels . 321 Labels for procedures Existence: . . . . . mandatory if referenced by another instruction. . 323 .324 . 325 .326 Formation rule First character: alphabetic. Last character: . alphameric. Others: . . . . . • . . . . alphameric. Number of characters: . 1 to S. Labels for library routines: . . . . . . . . same as procedures . Labels for constants: . same as procedures. Labels for files: . . . . same as procedures . Labels for records: .. same as procedures. Labels for variables: . same as procedures. . 33 Local Labels . 322 . 331 Region: . . . . . . . . . . local to a subprogram or overlay segment . . 332 Labels for procedures Existence: . . . . . . . mandatory if referenced by another instruction. Formation rule: . . . . same as for universal labels. . 333 Labels for library routines: . . . . .. . library routines are always universal. .334 Labels for constants: . same as procedures. .335 Labels for files: .. . same as procedures. . 336 Labels for records: .. same as procedures. .4 .41 Constants .411 Maximum size constants: Integer Decimal: . . . . 0 through 4,095. Octal: . . . . . . 4 octal digits. Fixed numeric: . not available . Floating numeric: .. not available . Alphabetic: . . . not available . Alphameric: . . . not available . .412 Maximum size literals: . . . . same as constants; see Paragraph . 411 . .42 Working Areas .421 Data layout Implied by use: . . . . no. Specified in program: yes, by use of macroinstructions. .422 Data type: . . . . . . . . . tabulated in program . .423 Redefinition: . . . . . . . not possible. .43 Input-Output Areas .431 Data layout: · . defined in pseudo and macro instructions. · defined in macro instructions . · not available . . 432 Data type: .. . 433 Copy layout: .5 PROCEDURES . 51 Direct Operation Codes . 511 MnemonicExistence: Number:. Example: .. . . . alternative. · . 62. · RAM - Replace Add to Memory. .512 AbsoluteExistence: Number:. Example: .. © 1966 AUERBACH Corporation and AUERBACH Info, Inc. · alternative. · . 64 . · .02 - Return Jump. 2/66 CONTROL DATA 6000 SERIES 260: 172. 520 · 52 can be processed asynchronously with the ASP ER program . . 622 Method of call: . . . • . system macro codes. Macro-Codes · 521 Number available Input-output: . . . . . . 41. Arithmetic: . . . . . . . none. Math functions: . . . . none. Error control: . . . . . 1. Restarts: . . . . . . . . none. Memory assignment control: . . . . . . . . 2. Processor assignment control: . . . . . . . . 1. Segment loading control: . • • . . . . . 2. · 522 ExamplesSimple: . . . . . . . . . SFF - Search File Mark Forward. Elaborate: . . . . . . . TPP - Transfer control from Central Memory program to a Peripheral Processor program. .523 New macros: . . . . . . . not available. . 53 Interludes: . . . . . . . • none. .54 Translator Control • 63 .631 Facilities: . . . • . . . . any number of defined overlay segments can be called in during execution of ASP ER program . .. LOAD macro-instruction. . 632 Method of call: .64 SPECIAL ROUTINES AVAILABLE • 61 Special Arithmetic: .. none. · 62 Special Functions .621 Facilities: . . . . . . . • Central Processor programs and ASPER macro routines 2/66 Data Editing · 641 Radix conversion: ... binary to decimal; decimal to binary. · 642 Code translation: . . . . BCD to or from Hollerith; BCD to or from Display Code. .643 Format control: . . . . . own coding required. · 644 Method of call: . . . . . handled by system macro instructions . . 541 Method of control Allocation counter: .. EQU pseudo-instruction. Label adjustment: .. by arithmetic operators (+ and - only) and symbolic data. Annotation: . . . . . . . Remarks field on coding sheet. .542 Allocation counter Set to absolute: . . . . not possible. Set to label: . . . . . . EQU pseudo-instruction. Step forward: . . . . . not possible. Step backward: . . . . not possible. Reserve area: . . . . . use of ORG, ORGR, and several other pseudoinstructions. .543 Label adjustment Set labe(ls equal: ... EQU pseudo-instruction. Set absolute value: .. use of ORG pseudoinstruction. Clear label table:. .. ? · 544 AnnotationComment phrase: ... written alongside the symbolic instruction. Title phrase: . . • . . . use of ASPER and SUBP header cards. .6 Overlay Control .66 Sorting: . . . . . . . . . . not available in ASPER language . . 67 Diagnostics: ... .7 LIBRARY FACILITIES .. no object-program diagnostics can be embedded through ASP ER instructions. . 71 Identity: . . . . . . . . . . System Disk Library . .73 Storage Form: . . . . . . disc file. .74 Varieties of Contents:. SIPROS system control and I/O routines; system subroutines. .75 Mechanism .751 Insertion of new item:. ? .752 Language of new item: ASPER. .753 Method of call: . . . . . SUBProgram pseudoinstruction. .76 Insertion in Program .761 Open routines exist: .. yes. .762 Closed routines exist: . yes. · 763 Open-closed is optional: . . . . . . . . . yes. .764 Closed routines appear once: . . . . . . . . . . . yes . .8 MACRO AND PSEUDO TABLES .81 Macros: . . . . . . . . . . see Table 1. .82 Pseudos: . . • . . • . • . see Table II. A AUERBACH '" 260:191. 100 A. AUERBACH STANDARD EDP CONTROL DATA 6000 SERIES OPERATING ENVIRONMENT SIPROS REPORTS OPERATING ENVIRONMENT: SIPROS .1 GENERAL • 11 Identity: •••••..••• SIPROS - SImultaneous PRocessing Qperating ~ystem. • 12 Description • 121 General Facilities Control Data's Simultaneous Processing Operating System (SIPROS) is a comprehensive control system designed to coordinate the parallel and independent operations of the multiple-processor, multiprogramming 6000 Series systems. SIPROS has been advertised as the official 6000 Series operating system, designed to supplant the "Chippewa" operating system that was supplied to early 6000 Series users as an interim system. However, the basic facilities originally provided by Chippewa have been improved and expanded by both Control Data and the early 6000 Series users. At the request of its users, Control Data is currently re-evaluating the entire software problem. The ultimate form and content of 6000 Series software are, therefore, undetermined at present. ( \, I \ SIPROS provides the control routines necessary to supervise the execution of many main programs or program segments residing in Central Memory and the concurrent execution of independentlyfunctioning programs in each of the ten Peripheral and Control Processors that are basic to every 6000 Series system. The standard version of SIPROS controls stacked-job processing of a large number of programs scheduled on the System Disk. Specialized executive routines can be supplied for conversational-mode remote terminal processing; these special-purpose routines are integrated into the SIPROS system and can utilize the many general-purpose SIPROS facilities. The full version of the standard SIPROS operating system is scheduled for delivery in April 1966. An improved and expanded version of SIPROS, designed specifically for control of remote-console time-sharing operations, is scheduled for delivery during the third quarter of 1967. The general facilities of TimeSharing SIPROS are described in Paragraph. 125 of this report section. The major objective of SIPROS is to handle dynamically-changing situations in which many jobs are being processed concurrently, with input-output operations, computations, compilations, and system and program testing operations being simultaneously active. SIPROS constantly evaluates the status of all parts of the system and attempts to maximize the use of all system components - especially the Central Processor. Thus, proceSSing and input-output optimization procedures are performed automatically, without extensive pre-planning by the programmer and/or system operator. SIPROS performs the following major functions in the 6000 Series systems: • Controls the operation of all standard 6000 Series language processors and utility routines. • Provides for automatic stacked-job processing, centered around the System Disk. • Automatically controls the physical assignment of input-output devices and core storage according to equipment availability. (Operator-defined I/O unit assignment is also possible.) .. Performs switching control functions between the several active programs residing concurrently in Central Memory. • Assigns tasks to the ten Peripheral and Control Processors and supervises their concurrent operation. • Provides for "continuous mode" operation of relatively slow output devices (card punch, printer, plotter, etc.) by storing the output data of a particular job on disc storage until the job is complete and then performing the output operation. Input data from low-speed devices can similarly be buffered by storing a job's total input on intermediate disc storage. .. Performs integrated diagnostic routines to check the functioning of various system components (including Central Memory and the Central Processor's functional units) during the processing of the day's scheduled jobs. o Provides full accounting information for each job processed at the conclusion of the job or upon operator request. Logged status data can be displayed on the system's console device and/or line printer. Usage of the Central Processor, Peripheral Processors, and I/o devices is measured and displayed. • Enables the operator to override SIPROS and standard installation conventions and parameters through use of the console keyboard. The operator can modify job priorities, introduce new jobs, delete active jobs, remove specified I/O devices from "available" status, etc. • Provides an automatic file-management system, File Manager, for simplified file control and updating by control cards. The File Manager is described in Paragraph 260:151.16. • Provides access to a complete library of system and problem programs stored on the System Disk, and supervises the operations of LIBRIOUS, the system librarian routine. .122 SIPROS Residence and System Overhead SIPROS is a complex, multi-part operating system whose control routines and various functions are supervised by the SIPROS Executive routine that resides in one of the Peripheral Processors. The SIPROS Monitor routine (see Paragraph. 124) shares the use of this reserved Peripheral Processor. Another reserved Peripheral Processor © 1966 AUERBACH Corporation and AUERBACH Info, Inc. 2/66 260: 191. 122 CONTROL DATA 6000 SERIES • 122 SIPROS Residence and System Overhead (Contd.) houses SIPROS' Disk Executive and Display routines, which control all disc file and console display operations. The Disk Executive can load disc file input-output routines into two additional slave Peripheral Processors that actually perform the disc I/O operations. also be designated as changing or fixed; changing priorities will be modified periodically by SIPROS to ensure that lower-priority programs will receive a proportionate amount of processing time and will not be ignored due to the insistent demands of higherpriority programs with which the less important jobs may co-exist. A Central Processor program that is currently being processed loses control whenever it encounters a program wait, such as a wait for an input-output operation to be completed. The SIPROS Monitor then switches control to the next eligible job in priority sequence. All remaining Peripheral Processors (including the disc slave Processors when not· engaged in specifically-assigned disc I/O operations) are termed "Pool" Peripheral Processors. Located in the upper 512 12-bit words of each Pool Processor's core memory is a control routine called the PP Resident, whose function is to interpret SIPROS-directed task assignments and to load the required system or user program into the remaining block of Peripheral Processor core storage. The PP Resident then initiates processing of the assigned task. Adequate memory protection for the multiprogrammed 6000 Series systems is provided by a combined hardware-software technique that recognizes the upper and lower bounds of each program and prohibits unauthorized Central Memory accesses beyond these boundaries. Any attempt to access memory beyond the legal limits results in an "Address Out of Range" error stop and a diagnostic map and/or dump of the job's allocated memory area. Another control routine that is a standard element within the SIPROS operating system is the Central Processor Resident. This is a small routine that resides in Central Memory with each operational program. The Central Processor Resident routine serves as the communication link between its associated program and the SIPROS Executive; it performs such tasks as interpreting the program's system macro requests, supplying the programmer's parameters to the macro routines, and loading I/o buffer areas with print, punch, and card reader data that is to be transferred to temporary storage on the System Disk. . 124 Principal Control Programs Executive: The SIPROS Executive schedules the operations of the Central Processor, the Peripheral Processors, the 12 input-output channels, and the peripheral equipment (except for disc file units). The Executive also maintains a status list for each active job in the system, whether currently in Central Memory or stacked in the System Disk. The Executive continuously examines these status lists and initiates appropriate action upon detecting status changes. The system overehead associated with any operating system is generally expressed not only in terms of the equipment that is reserved for use by the operating systems, but also in terms of the amount of Central Processor time that is required to perform the executive/monitor functions. However, in the Control Data 6000 Series computer systems, the SIPROS operating system imposes no demands upon the Central Processor, which can therefore devote all of its time to the processing of users' programs. The Peripheral Processors perform all of SIPROS' control functions, and the Central Memory accesses required for SIPROS operations can be completely overlapped with Central Memory accesses by the Central Processor, which is given priority whenever there are conflicting requests for access to a particular memory bank. Monitor: The SIPROS Monitor routine resides in a reserved Peripheral and Control Processor together with the Executive described above. The Monitor works in conjunction with the Executive, continuously checking the progress of the program in Central Memory that is being executed by the Central Processor. Any need for action, such as an I/o request, is relayed to the Executive for initiation of appropriate action. As the Monitor cycles through its list of jobs and finds "wait" conditions, it switches control to the next eligible job in priority sequence. Disk Executive: The Disk Executive routine of SIPROS directs the activities of the System Disk. This routine also schedules all disc file read/write/ search requests from processing programs and assigns two slave Peripheral and Control Processors to perform these disc operations. The scheduling function ensures that all disc requests that can be performed at the current position (and the next requested positions) of the disc read/write heads will be performed consecutively. The Disk Executive also coordinates all disc file operations by ordering the repositioning of heads ori one file while the slave processors are reading or writing from another disc file unit. . 123 Multiprogramming and Multiprocessing The standard environment in which SIPROS functions consists of many programs concurrently residing in Central Memory, with each program periodically receiving processing control. Simultaneously, the ten Peripheral and Control processors can be performing other independent tasks, both system control functions and jobs assigned by the Executive, either in support of Central Processor programs or as independent "off-line" operations (such as data transcriptions). Batch Loader: The SIPROS Batch Loader routine is called by the Executive whenever available space on the System Disk is detected. The Batch Loader then examines the system's input units (either card readers or magnetic tapes) and loads any jobs waiting in the input job stream into the System Disk until the latter device again becomes filled or until the input stream is exhausted. The operations of the Batch Loader are directed in large part by each job's control cards. From information contained (Contd. ) A comprehensive priority system determines the order in which SIPROS assigns equipment to the jobs in Central Memory and initiates their execution. Priorities can be assigned by the programmer, by the operator, or by the system, and different priorities can be assigned to the program's main processing and its input-output operations. Priorities can 2/66 fA AUERBACH ~ ;/ - - - [.7'" 4 "\]\Sl:~ ~ ~ - - - -VIlA /- - - - - - - VIllA 2 ------ 0.1 7 4 Time in Minutes to Process 10,000 Master File Records 2 6400 C1?- 0.01 ---- ~ 7 4 2 I V ./ / 0.001 7 4 2 1(7 ...... ..... 6 n i ..-' ~. -' 0.0001 0.0 V 0.1 66 00C1? -' / / ~ ~~ .... ---- _6800 C1? -- - -- 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record I I \ (Roman numerals denote standard System Configurations.) LEGEND ( " - - - 6400 CP - 6600 CP - -6800 CP - Elapsed time for main processing run (Files 3 & 4 unblocked). Elapsed time for main processing run (Files 3 & 4 blocked). 6400 Central Processor time for main processing run. 6600 Central Processor time for main processing run. 6800 Central Processor time for main processing run. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 260: 201. 120 CONTROL DATA 6000 SERIES Standard File Problem B • 12 .122 Computation: . . . . . . . standard . • 123 Timing basis: ..•..• using estimating procedure .121 Record sizes - outlined in Users' Guide, Master file: •.•.•• 54 characters. Detail file: ..••••. 1 card. Report file: •.•.•.. 1 line. 4:200.12, adjusted for multiprocessing. .124 Graph: ...•••.•... see graph below. 1.0 ------ ~ 7 ~ "\Jln.~ ~ '-l\\V ·7 4 V /' ~ ~ ---;;7' ----,.. ,.,." V-- .- ,.. 2 "\J~-- "\Jli1~-- ,.,.---- --- ---- ---- 0.1 7 4 Time in Minutes to Process 10,000 Master File Records 2 0.01 .- 7 ;" 4 ~/ 2 .JII' . ~oooo cp---- 7 7 ,. 4 I 2 r/ - /'" 7 0.001 _MOO CP- ~ -' 17 .1 7 _ 0800 CP V~ ~ --- --... - --- / 0.0001 0.0 o. 1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record (Roman numerals denote standard System Configurations.) LEGEND - - - 6400 CP - 6600 CP - -6800 CP - 11/65 - - - - Elapsed time for main processing run (Files 3 & 4 unblocked). Elapsed time for main processing run (Files 3 & 4 blocked). 6400 Central Processor time for main processing run. 6600 Central Processor time for main processing run. 6800 Central Processor time for main processing run. fA.• AUERBACH (Contd.) 260:201. 130 SYSTEM PERFORMANCE .132 Computation: • . . . . . . standard . .133 Timing basis: . • . . . . using estimating procedure Standard File Problem C • 13 .131 Record sizes - outlined in Users' Guide, Master file: ....•• 216 characters. Detail file: .•••••. 1 card. Report file: ••••••. 1 line. 1.0 4:200.13, adjusted for multiproces sing. .134 Graph: . • . . . . . . . . . see graph below. - VIlA VilA 7 '1i.11~ ---- 4 =---- VIllA 2 0.1 7 4 Time in Minutes to Process 10,000 Master File Records 2 0.01 7 AfJ" ./ 4 ,/ _____ 640 0 CP - -- .-- [1''''' 2 I 0.001 .:;~-----# n II 7 "" d .v /' 4 / f/ 2 / 0.0001 0.0 V 0.1 660 0CP - ,~ ------ _ 6800 CP --- 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record (Roman numerals denote standard System Configurations.) LEGEND ( - - - - - 6400 CP 6600 CP 6800 CP - - Elapsed time for main processing run (Files 3 & 4 unblocked). Elapsed time for main processing run (Files 3 & 4 blocked). 6400 Central Processor time for main processing run. 6600 Central Processor time for main processing run. 6800 Central Processor time for main processing run. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 260 : 20 1. 140 • 14 CONTROL DATA 6000 SERIES Standard File Problem D .142 Computation: . . . . . . • trebled • • 143 Timing basis: ••••.. using estimating procedure outlined in Users' Guide, 4:200.14, adjusted for multiprocessors. .144 Graph: ..•..•••.•. see graph below. .141 Record sizes Master file: . • . . . . 108 characters. Detail file: ..•••.. 1 card. Report file: ••.••.• 1 line. - 1.0 7 ~'\\-~ /' 4 . / --- 2 V' b 'l"11l :..-..- - - ---VilA ---VillA ~----- --- /' 0.1 7 .----- 4 - ........ G4()() C l ' - Time in Minutes to Process 10,000 Master File Records 2 ,./ i-"""" / 0.01 7 , _G6()() C l ' - I 4 I I ,/ 2 I V , I 7 I I ~... I 4 ~ ~. • 0.001 I - . - - - - 6S()() Cl'- -- ---- / 2 0.0001 0.0 O. 1 0.33 1.0 Activity Factor Average Number of Detail Records Per Master Record (Roman numerals denote standard System Configurations.) LEGEND - - - - - - 6400 6600 6800 CP CP CP - - Elapsed time for main processing run (Files 3 & 4 unblocked). Elapsed time for main processing run (Files 3 & 4 blocked). 6400 Central Processor time for main processing run. 6600 Central Processor time for main processing run. 6800 Central Processor time for main processing run. (Contd.) 11/65 IA AUERBACH ~ 260: 201. 200 SYSTEM PERFORMANCE •2 SORTING .21 Standard Problem Estimates .212 Key size: . • . • . . . . . 8 characters . .213 Timing basis: . • . . . • using estimating procedure outlined in Users' Guide, 4:200.213 • .214 Graph: . . . • • . . . . • . see graph below. • 211 Record size: .•••••• 80 characters. 1,000.0 7 4 2 100.0 7 4 2 Time in Minutes to Put Records Into Required Order 10.0 V , 7 4 / 4~ 2 / / / I I / ,/ / / 1'1 4~ 1.0 , 7 !./ / 4 V / 2 II I 0.1 I \~ / / 100 2 4 V 7 1,000 2 4 7 10,000 2 4 7 100,000 Number of Records (Roman numerals denote standard System Configurations.) © 1965 AUERBACH Corporotion and AUERBACH Info, Inc. 11/65 260 : 201. 300 CONTROL DATA 6000 SERIES •3 MATRIX INVERSION .31 Standard Problem Estimates • 311 Basic parameters: ... general, non-symmetric matrices, using floating point to at least 8 decimal digits precision. .312 Timing basis: ....•. using estimating procedure outlined in Users' Guide, 4:200.312 . . 313 Graph: . . . . . . . . . . . see graph below . 1.0 7 I I 4 2 I I I I I IJ II ./ I II YII 0.1 7 I I 4 II 2 II II 0.01 7 Time In Minutes for Complete Inversion f- <::> ~t f-9 I IJ II 2 J / &1 II I 0.001 II i!S1 : , .' / 0" / ' 7 ,,"",'" / 4 / 2 l/~ / 0.01 V / 0" ,,' .' ~, ,,'" 0'1 ,,'0 1 (1- / / 4 V / / 0.001 V 2 0.1 /' / 2 4 2 1 4 2 7 10.0 1.0 4 1 100.0 C, Number of Computations per Input Record LEGEND ------------- 6400 CP - 6600 CP - 6800 CP - Elapsed time. 6400 Central Processor time. 6600 Central Processor time. 6800 Central Processor time. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 260:211. 101 CONTROL DATA 6000 SERIES PHYSICAL CHARACTERISTICS PHYSICAL CHARACTERISTICS Unit Width, inches 6401 Central Computer 6404 Central Computer 6405 Central Computer 6411 Augmented I/O Buffer and Control 165 165 165 6601 Central Computer 6604 Central Computer 6605 Central Computer 165 165 165 98.5 Height, inches Weight, pounds Power, KVA 98.5 32 32 79.8 79.8 79.8 11,400 7,800 7,800 27.97 18.65 18.65 95,400 69,250 69,250 32 79.8 4,200 9.31 31,400 1.65 98.5 98.5 79.8 79.8 79.8 15,000 11,400 11,400 37.3 27.97 27.97 102,000 95,400 95,400 Depth, inches BTU per hr. 6602 Console Display 6060 Remote Calculator 60 19.4 52 23.1 48.5 9.5 900 40 5 amps. 10 amps. 2,100 ? 852 Disk Storage Drive 853 Disk Storage Drive 854 Disk Storage Drive 24 24 24 36 36 36 40.8 40.8 40.8 480 480 480 9 amps. 9 amps. 9 amps. 3,000 3,000 3,000 6603 Disk System: Main Cabinet Auxiliary Cabinet 60 22 46 46 53 53 2,800 850 5 amps. 70 amps. 24,000 6607 Disk System: Disk File Cabinet Auxiliary Cabinet 108 48 39 39 77 3,350 1,000 ? ? 34,100 77 6608 Disk System: Disk File Cabinet Auxiliary Cabinet 108 48 39 39 77 77 4,000 1,000 ? ? 44,370 626 Magnetic Tape Transport 28 33 72 1,200 11 amps. 11,000 General Purpose Peripheral Controller Cabinet 48 32 48 800 5 amps. 3,900 3276 Communication Terminal Controller 32.8 29.8 68.8 700 12 amps. 5,900 General Requirements Temperature: 72° ± 3°F. Relative Humidity: 35% - 50%. Power 1. 50/60-cycle, single-phase, 115±10 vac. This provides power to each cabinet for blowers and utility outlets. 2. 400-cycle, 3-phase, 208 vac, 4-wire. This is produced by a motor-generator frequency converter and provides primary power for the dc supplies. The motor-generator frequency converter requires 3-phase, 3- or 4-wire, 50/60-cyc1e power, at a line-to-line voltage of either 208, 220, or 440 vac. 3. Peripheral equipment will require either 50/60 cycle, 3-phase, 4-wire, Y -connected, 208 ± 20 vac; or 50/60 cycle, single-phase, 115 ± 10 vac. 11/65 A AUERBACH • --- --- --- 260:221. 101 CONTROL DATA 6000 SERIES PRICE DATA PRICE DATA IDENTITY OF UNIT CLASS CENTRAL PROCESSORS No. Name PRICES Monthly Rental Monthly Maintenance Purchase $ $ $ 6401 Central Computer for 6400 system, with 131,072 words of core storage , 10 Peripheral Processors with storage, power and cooling apparatus 50,000 6,100 2,100,000 6404 Central Computer - same as 6401, but with 65,536 words of core storage 30,950 3,525 1,300,000 6405 Central Computer - same as 6401, but with 32,768 words of core storage 17,850 2,340 750,000 6410 Additional Central Processor, with arithmetic and control functions of the basic 6400 Central Processor 9,700 1,000 410,000 6411 Augmented Input-Output Buffer and Control, with 16,384 words of core storage and 10 Peripheral Processors with storage 7,100 530 340,000 6601 Central Computer for 6600 system, with 131,072 words of core storage, 10 Peripheral Processors with storage, power and cooling apparatus 71,500 7,210 5,110,000 6604 Central Computer - same as 6601 but with 65,536 words of core storage 53,500 6,400 3,450,000 6605 Central Computer - same as 6601 but with 32, 768 words of core storage 41,900 5,700 2,600,000 6801 Central Computer for 6800 system with 131,072 words of core storage, 10 Peripheral Processors with storage, power and cooling apparatus 77,500 7,210 3,600,000 6804 Central Computer - same as 6801 but with 65,536 words of core storage 53,500 6,400 2,400,000 6805 Central Computer - same as 6801 but with 32,768 words of core storage 41,900 5,700 1,800,000 © 1965 AUERBACH Corporation and AUERBACH Infa, Inc. 11/65 CONTROL DATA 6000 SERIES 260:221. 102 IDENTITY OF UNIT CLASS BULK CORE STORAGE INPUTOUTPUT PRICES Name No. Monthly Maintenance Purchase $ $ $ 6830 Extended Core Storage; 524,288 words 29,000 1,800 800,000 6831 Extended Core Storage; 1,048,576 words 58,000 2,800 1,600,000 Consoles and Disl2la:z::s Console Display (with controller) Remote Calculator 900 125 160 18 45,750 4,500 Disk Disk Disk Disk ? 320 470 ? ? ? ? 14,200 21,000 6602 6060 852 853 854 6603 6607 6608 626 6622 File Storage Storage Drive Storage Drive Storage Drive Disk System Disk System Disk System Magnetic Tape Magnetic Tape Transport; 240,000 characters/sec, 14 tracks. Magnetic Tape Controller Data Communications Communication Terminal Controller 6675-D Data Set Controller Data Set Controller 6676 6677-A Multiplexor 6677-B Multiplexor 6678 Data Set Controller 3276 DATA CHANNEL CONVERTER Monthly Rental 6681 Data Channel Converter 6682 Satellite Coupler, for direct connection of 6000 Series Data Channels 5,600 4,900 7,250 610 610 755 225,000 200,000 295,000 1,075 185 51,600 560 85 24,000 250 55 12,500 1,450 1,900 1,250 1,500 1,900 180 120 110 130 150 60;000 75,000 50,000 60,000 75,000 310 40 13,500 90 12.50 4,100 NOTE: FOR PRICES OF THE CONTROL DATA 3000 SERIES PERIPHERAL UNITS, SEE PAGE 245:221.101. / 11/65 A AUERBACH ~ CDC 6400 Control Data Corporation \ AUERBACH INFO, INC. PRINTED IN U. S. A. CDC 6400 Control Data Corporation AUERBACH INFO, INC. PRINTED IN U. S. A. -& 263:011. 100 SlIm" CONTROL DATA 6000 SERIES 6400 COMPUTER SYSTEM INTRODUCTION /AEDP AUERBAC~ _-----.....J IE PORTS INTRODUCTION The Control Data 6400 Computer system is characterized by a Central Processor that executes one instruction at a time using an internal clock-cycle time of 100 nanoseconds. A tworegister instruction access buffer or stack is used to minimize delays in instruction retrieval. The 6400 utilizes a Central Memory with a cycle time of one microsecond per 60-bit word. Up to 10 banks of Central Memory can be accessed concurrently. The ten Peripheral Processors that form an integral part of the 6400 system have fairly complete instruction sets and individual, independent core storage units of 4,096 12-bit words, with a cycle time of one microsecond. This report concentrates upon the performance of the Control Data 6400 system in particular. All general characteristics of the 6000 Series hardware and software are described in Computer System Report 260: Control Data 6000 Series - General. The System Configuration sectil:m which follows shows the Control Data 6400 in the following standard configurations: V: VI: VIlA: VITIA: 6-Tape Auxiliary Storage System 6-Tape Business/Scientific System 10-Tape General System (Integrated) 20-Tape General System (Integrated). These configurations were selected to show the 6400 both in its minimum configurations (V and VI) and in larger multi-tape configurations (VIlA and VIIIA). Multiprogramming and multiprocessing are the 6400's normal modes of operation. As a result, the main processing runs and the input-output data transcription runs in our standard benchmark problems are assumed to be performed in parallel. The system configurations are arranged according to the rules in the Users' Guide, page 4:030.120, and any significant deviations from the standard specifications are listed. The principal deviations include the ten Peripheral Processors that are standard in every 6000 Series system, and the System Disk, required for use by the SIPROS operating system. Section 260:051 provides detailed central processor timing data for the 6400. See Section 260:051 for the other characteristics of the program-compatible 6000 Series processors. System Performance measurements for the 6400 computer system are presented in Section 260:201, together with the measurements for the 6600 and 6800 systems for ease of comparison. The software that is provided for all 6000 Series systems is described in Sections 260: 151 through 260:191. I \ ',,- © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 - 263:031. 100 CONTROL DATA 6000 SERIES 6400 COMPUTER SYSTEM SYSTEM CONFIGURATION SYSTEM CONFIGURATION The basic Control Data 6000 Series system configuration possibilities are summarized in report Section 260:031. This section shows the Control Data 6400 Computer System arranged in several configurations that conform to our Standard Configurations, as defined in the Users' Guide, page 4:030.120. Note that the 6681 Data Channel Converter is used in each configuration. This device permits the use of any peripheral units that are used with the Control Data 3000 Series computer systems . •1 6-TAPE AUXILIARY STORAGE SYSTEM; CONFIGURATION V Deviations from Standard Configuration: . . . . . . . . . . . . auxiliary storage capacity is 65% larger. card reader is 140% faster. card punch is 150% faster. magnetic tapes are 40% faster. 320,000 additional characters of core storage. Equipment Rental 828 Disk File (33 million char) 3432 Controller $ 2,400 1,050 6607 Disk System * with controller (84 million characters) 4,900 6400 Central Processor with 32K 60-bit words of storage 10 Peripheral Processors, each with 4K 12-bit words of storage 17, 850 10 x 12 Bus 12 Input/Output Channels 6602 Console Display 900 405 Card Reader (1, 200 cpm) 3248 Controller 400 100 415 Card Punch (250 cpm) 3245 Controller 295 330 505 Line Printer (500 lpm) 3256 Line Printer Controller 6681 Data Channel Converter 635 515 310 603 41. 7KC Magnetic Tape Units (6) 3229 Controller 6681 Data Channel Converter TOTAL: * 3,300 600 310 $33,895 Provided for operating system purposes. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 CONTROL DATA 6000 SERIES 263:031. 200 .2 6-TAPE BUSINESS/SCIENTIFIC SYSTEM; CONFIGURATION VI Deviations from Standard Configuration ••.••••.••.•. card reader is 140% faster. card punch is 150% faster. magnetic tapes are 40% faster. 240,000 additional characters of core storage. Equipment Rental 6607 Disk System * with controller (84 million characters) $ 4,900 6400 Central Processor with 32K 60-bit words of storage 10 Peripheral Processors, each with 4K 12-bit words of storage 17,850 10 x 12 Bus 12 Input/Output Channels 6602 Console Display 900 405 Card Reader (I, 200 cpm) 3248 Controller 400 100 415 Card Punch (250 cpm) 3446 Controller 295 450 505 Line Printer (500 lpm) 3256 Line Printer 6681 Data Channel Converter 635 515 310 603 41. 7KC Magnetic Tape Units (6) 3229 Controller 6681 Data Channel Converter TOTAL: * 3,300 600 310 $30,565 Provided for operating system purposes. / (Contd. ) 11/65 A AUERBACH ~ SYSTEM CONFIGURATION .3 263:031. 300 10-TAPE GENERAL SYSTEM (INTEGRATED); CONFIGURATION VIlA Deviations from Standard Configuration: .•.•.•.•...• card reader is 140% faster. card punch is 150% faster. 200,000 additional characters of core storage. Equipment Rental 6607 Disk System* with controller (84 million characters) $ 4,900 6400 Central Processor with 32K 60-bit words of storage 10 Peripheral Processors, each with 4K 12-bit words of storage 17,850 10 x 12 Bus 12 Input/Output Channels / \ 6602 Console Display 900 405 Card Reader (1,200 cpm) 3248 Controller 400 100 415 Card Punch (250 cpm) 3446 Controller 295 450 505 Line Printer (500 lpm) 3256 Controller 6681 Data Channel Converter 635 515 310 604 60KC Magnetic Tape Units (6) 3229 Controller 6681 Data Channel Converter 3,600 600 310 604 60KC Magnetic Tape Units (4) 3228 Controller 6681 Data Channel Converter 2,400 425 310 TOTAL: $34,000 * Provided for operating system purposes. " .. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 CONTROL DATA 6000 SERIES 263:031. 400 .4 20-TAPE GENERAL SYSTEM (INTEGRATED); CONFIGURATION VIllA Deviations from Standard Configuration: .••••• • • . . . . card reader is 20% faster. card punch is 25% faster. 80,000 additional characters of core storage. Equipment Rental 6607 Disk System * with controller $ 4,900 6400 Central Processor with 32K 60-bit words of storage 10 Peripheral Processors, each with 4K 12-bit words of storage 17,850 10 x 12 Bus 12 mput/Output Channels 6602 Console Display 405 Card Reader (1,200 cpm) 3248 Controller 900 400 ·100 415 Card Punch (250 cpm) 3446 Controller 295 450 505 Line Printer (500 Ipm) 3256 Controller 6681 Data Channel Converter 635 515 310 607 120KC Magnetic Tape Units (6) 3229 Controller 6681 Data Channel Converter 5,250 600 310 607 120KC Magnetic Tape Units (4) 3228 Controller 6681 Data Channel Converter 3,500 425 310 '\ 607 120KC Magnetic Tape Units (6) 3229 Controller 6681 Data Channel Converter 5,250 600 310 607 120KC Magnetic Tape Units (4) 3228 Controller 6681 Data Channel Converter 3,500 425 310 TOTAL: * 11/65 Provided for operating system purposes. fA AUERBACH $ $47,145 263:051. 100 1& AUERBACH STANDARD EDP CONTROL DATA 6000 SERIES 6400 COMPUTER SYSTEM CENTRAL PROCESSOR REPORTS CENTRAL PROCESSOR .1 GENERAL .11 Identity: . . . . . . . • • . Control Data 6400 Central --Processor. .12 Description See Section 260:051 for a comprehensive description of the characteristics of all the Control Data 6000 Series Central Processors. See Section 263:011 for a summary of the distinguishing features of the Control Data 6400 Central Processor as used in Control Data 6400 c,omputer systems. The Instruction Times and Processor Performance Times for the Control Data 6400 Central Processor, in fixed-point and floating-point arithmetic modes, are listed below. See Paragraphs 4:050.41 and 4:050.42 of the Users' Guide for the definitions of these standard measures of central processor performance. \ .4 PROCESSOR SPEEDS .41 Instruction Times in Microseconds .411 Fixed point Add-subtract: .••.. O. 6 Multiply: .•..••.. instruction not Divide: . . . . . . • . . instruction not .412 Floating point Add-subtract: . . . . . 1.1 Multiply: . . . . . . . . 5.7 Divide: . . . . . . . . . 5.6 .413 Additional allowance for Indexing: . . . . • . • . not used. Indirect addressing: . 1.0 Recomplementing: •. 0 .414 Control Compare: . . . • . • . . 1. 2 Branch: .•..••••. 1. 2 Compare and branch: 1. 2 • 415 Counter control Step: . . . • . • • . . . . 0.5 Step and test: . . . . . instruction not Test: . . . . • . . . . . • 1.2 • 416 Edit: ..••.•••.... instruction not available. available. available. available . .417 Convert: ...••.••.. instruction not available . .418 Shift: . . . . . . • . . • . . 0.6 .42 Processor Performance in Microseconds Fixed point Floating point .421 For random addresses 2.1 2.0 c = a + b: .••••••• 2.0 2.1 b = a + b: •••••••• LON LIN Sum N items: ..•.. 7.1 c = ab: ....•.•••. 7.1 c = alb: ..•..••.. .422 For arrays of data 4.2 ci = ai + bj:. . . . . • . 4.3 4.2 bj = ai +bj:. • • • •• . 4.3 3.8N Sum N items: • . • • . 3.9N 6.8 c = c + aibj: . . • . . . .423 Branch based on comparison Numeric data: ..•.• 1.0 + 6.1N Alphabetic data: .••• 1.0 + 6.1N .424 Switching Unchecked: . . . . . . . 3.4 Checked: . . . . . • . . 6.3 List search: . . . . . . 1.0 + 5.1N .425 Format control: . . . . . normally performed by Peripheral Processors . .426 Table lookup, per comparison For a match: . . . • . . 5.1 For least or greatest: . . . . . . . 4.1 For interpolation point: . . • . . . . . . . 5.1 .427 Bit indicators Set bit in separate location: . . . . . • • . 1. 0 Set bit in pattern: ... 2.4 Test bit in separate location: . . . . . • . . 1. 7 Test bit in pattern: .. 2.6 Test AND for B bits: 3.1 Test OR for B bits: .3.1 .428 Moving With self: .•.••... 0.5 million words/sec . With a Peripheral Processor Memory: 2 million words/sec. With an Extended Core Memory: . . . . 10 million words/sec. \, © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 -~ 263:052. 100 SlIM"" A\\EDP CONTROL DATA 6000 SERIES 6400 COMPUTER SYSTEM PERIPHERAL PROCESSORS - AUERBAC~ REPORTS PERIPHERAL AND CONTROL PROCESSORS .1 GENERAL . 418 Shift:.... . . . . . .. . 11 Identity:.......... Control Data 6400 Peripheral and Control Processors. Description .42 .12 See Section 260 :052 for a comprehensive description of the functional characteristics of all the Control Data 6000 Series Peripheral and Control Processors. The Instruction Times and Processor Per·formance times for the Control Data 6400 Peripheral and Control Processors, in the fixed-point binary arithmetic mode, are listed below. See Paragraphs 4:050.41 and 4:050.42 of the Users' Guide for the definitions of these standard measures of processor performance. .4 PROCESSOR SPEEDS .41 Instruction Times in Microsecorids .411 Fixed point Add-subtract: . • .. 2.0 Multiply: . . . . . . . not available. Divide: • . . . . . • . not available . . 412 Floating point: . . . .. not available. . 413 Additional allowance for Indexing: •..•.•. 1. 0 Indirect addressing: 1. 0 .414 ControlCompare: . . . . . .• not available. Branch: . . . . . . .. 1. 0 Compare and branch: . . . . . . • not available. . 415 Counter control Step:.. . . . . . . .. 4.0 Step and te s t:. . . .. not available. Test: . . • . . . . . .. 2.0 .416 Edit: . . . . . . . . • .. not available. . 417 Convert:......... not available. .421 For random addresses c = a + b: • . • . . .. b = a + b: • . • . . .• Sum N items: . . . . .422 For arrays of data - .423 • 424 .425 .426 .427 . 428 1. 0 Processor Performance in Microseconds 6.0 3.0 2. ON Ci=~+bj:""" 17.0 bj = ai:- bj: . . . . .. 14.0 Sum N Items: . . . . 5.0N Branch based on comparison Numeric data: . . .. 60 Alphabetic data: . .. 60 SwitchingUnchecked: • . . • .. 22 Checked: . . . . . . . 34 List search: . . ... 14 + 10CN, where C = number of characters in the item . Format control, per character Unpack: .. . . . . .. ? Compose: . . . . . .. ? Table lookup, per comparison For a match: . . . . . . 10C. For least or greatest: . . . . . . • 25 • For interpolation point: . . . . . . . . . • 25. Bit indicators Set bit in separate location: . . . . . . . . 3. Set bit in pattern: ... 9. Test bit in separate location: . . . . . . . 2 . Test bit in pattern: .. 8. Test AND for B bits:. 8. Test OR for B bits: .8 . Moving: . . . . . . . . . . 5 + 2. 5C, where C = number of 6-bit characters moved . /' 11/65 fA AUERBACH ~ -£ 263:111. 100 STANDARD CONTROL DATA 6000 SERIES 6400 COMPUTER SYSTEM SIMULTANEOUS OPERATIONS /A"EDP AUERBACH R[PORTS SIMULTANEOUS OPERATIONS A Control Data 6400 computer system can concurrently: It Execute one Central Processor machine instruction (or two using the Dual Processor configuration); and o Perform 10 independent peripheral programs, one in each of the Peripheral and Control Processors; and • Perform an additional 120 independent peripheral programs through use of the full complement of 12 Augmented Input-Output Buffer subsystems; and • Access up to 10 banks of Central Memory; and • Perform a mass data transfer between Central Memory and Extended Core Storage; and o Control up to 12 input-output operations, one on each Data Channel; and o Control as many further input-output operations as there are additional Data Channels and/or multiplexing and buffermg capabilities of individual I/O devices and controllers. The Central Processor is normally not delayed in any way by input-output operations. However, a Peripheral and Control Processor is delayed to some extent during each I/O operation. Table I lists the amount of Peripheral and Control Processor input-output delay for each of the peripheral units that can be connected to the Control Data 6400 computer system, including several devices originally used with the Control Data 3000 Series. Also included in Table I is the amount of Data Channel time that is consumed during each input-output operation. Because the data transfer rate between Data Channels and Peripheral Processors is so high (2 million characters per second), the individual Data Channels can be effectively multiplexed between several input-output devices. The extent of Data Channel multiplexing varies from one peripheral device to another and is therefore discussed in the individual report sections that describe the various peripheral devices. I \ © 1965 AUERBACH Corporafion and AUERBACH Info, Inc. 11/65 263: 111. 101 CONTROL DATA 6000 SERIES TABLE I: SIMULTANEOUS OPERATIONS Cycle Time, DEVICE Start Time msee. Time, msee. PP Use % CP Us. % Data Transmission Channel Use Time, PP Use % msee. CP Use % stop Time Channel Use Time, msee. PP Use % CP Use % Channel Use 828, 838 Disk Files 52.0 250 av 0.0 0.0 1 maee Var Yes 0.0 --- 40.0 25.0 25.0 66.6 52.5 77.5 70.0 70.0 93.0 59.3 100.0 100.0 100.0 100.0 100.0 0.0 0.0 0.0 Yes Yes Yes Yes Yes Var Var Var Var Var 6.4 or 11.0 200.0 200.0 200.0 200.0 200.0 0.0 852 Disk Transport 853 Disk Transport B54 Disk Transport 6603 Disk File 6607/660B Disk File 0.0 0.0 0.0 0.0 0.0 Yes Yes Yes Yes Yes 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 ----------- --- ------------- 3235 Drum Storage 861 Drum Storage 862 Drum Storage 6430 Extended Core Storage 34.4 34.4 17.2 17.2 av 17.2av 8.6 av 0.0 0.0 0.0 0.0 0.0 0.0 1 msee ? Var Var Var 16.8 200.0 200.0 0.0 0.0 0.0 Yes Yes Yes 0.0 0.0 0.0 --- 0.0 0.0 0.0 --- Var 0.0 ? No 0.0 --------- --------- ------- 50.0 1B.0 0.0 0.0 Yes 32.0 <0.1 0.0 Yes 0.0 --- 50.0 42.0 0.0 0.0 Yes B.O <0.1 0.0 Yes 0.0 --- ----- --- 240.0 4B.0 0.0 0.0 Yes 190.0 <0.1 0.0 Yes 2.0 0.0 0.0 No 240.0 48.0 <0.1 0.0 2.2 msee 190.0 <0.1 0.0 No 2.0 0.0 0.0 No 600.0 B4.0 0.0 0.0 Yes 514.0 <0.1 0.0 Yes 2.0 0.0 0.0 No 600.0 B4.0 <0.1 0.0 2.2 msee 514.0 <0.1 0.0 No 2.0 0.0 0.0 No 240.0 4B.0 0.0 0.0 Yes 190.0 <0.1 0.0 Yes 2.0 0.0 0.0 No 240.0 4B.0 <0.1 0.0 2.2 maee 190.0 <0.1 0.0 No 2.0 0.0 0.0 No 405 Card Reader, 1,200 cpm, unbuffered 405 Card Reader, 1, 200 cpm, buffered 415 Card Punch, 250 cpm, unbuffered 415 Card Punch, 250 epm, buffered 523 Card Punch, 100 cprn, unbuffered 523 Card Punch, 100 cpm, buffered 544 Card Punch, 250 epm, unbuffered 544 Card Punch, 250 cpm, buffered 3691 Paper Tape Reader, 350 eps 3691 Paper Tape Punch, 110 cps 3694 Paper Tape Reader, av av av av av --0.0 ? --- --- 2.9 ? 0.0 0.0 Yes 2.9 <0.1 0.0 Yes 2.0 0.0 0.0 No 9.0 ? 0.0 0.0 Yes 9.0 <0.1 0.0 Yes 3.0 0.0 0.0 No 1.0 0.0 0.0 Yes 1.0 <0.1 0.0 Yes O.B 0.0 0.0 No 3694 Paper Tape Punch, 110 eps ? 9.0 0.0 0.0 Yes 9.0 <0.1 0.0 Yes 3.0 0.0 No 400 + 9.7LS 100 + 5LS 55 + 5LS 60 + 6.7LS 120 + 6.7LS ----- --- 0.0 3152 Line Printer, 150lpm 1403 Model 2 Printer. 600lpm 1403 Model 3 Printer, l,100lpm 501 Printer, l,OOOlpm 505 Printer, 500lpm ? 0.0 --- 375 ? 0.0 0.1 msec 0.0 0.0 No --- --- BO ? 0.0 0.1 maee 0.0 0.0 No --- ----- O.lmsee 0.0 0.0 No 0.0 U.O No 0.0 ------- 25 + 9.7LS 20 + 5LS 20 + 5LS 13 + 6.7LS 13 + 6.7LS 0.0 0.0 No 601 Magnetic 20.B KC 603 Magnetic 41.7 KC 604 Magnetic 60.0 KC 606 Magnetic B3.4 KC 607 Magnetic 120 KC 626 Magnetic 240 KC 692 Magnetic 30 KB 694 Magnetic 60 KB 696 Magnetic 90 KB --------------- 3.0 0.0 2.75 0.0 2.75 0.0 2.75 0.0 2.75 2.75 1,000 cps Tape Unit, Tape Unit, Tape Unit, Tape Unit, Tape Unit. Tape Unit, Tape Unit, Tape Unit, Tape Unit, 3692 Program Controlled Input- Output Typewriter 3293 Incremental Plotter Note: ----67 3.3 or 5.0 0.0 0.0 ? 0.0 45 ? 0.0 0.1 msec --- 105 ? 0.0 0.1 msec O. Yes Var 4.1 0.0 Yes 3.0 0.0 0.0 No 0.0 Yes Var B.3 0.0 Yes 2.25 0.0 0.0 No 0.0 Yes Var 12.0 0.0 Yes 2.25 0.0 0.0 No 0.0 Yes Var 16.7 0.0 Yes 1.75 0.0 0.0 No 0.0 0.0 Yes Var 24.0 0.0 Yes 1. 75 0.0 0.0 No 0.0 0.0 Yes Var 4B.0 0.0 Yes 1.75 0.0 0.0 No ? 0.0 0.0 Yes Var ? 0.0 Yes ? 0.0 0.0 No ? 0.0 0.0 Yes Var ? 0.0 Yes ? 0.0 0.0 No ? 0.0 0.0 Yes Var ? 0.0 Yes ? 0.0 0.0 No 0.0 100.0 --- --- --- Var No 0.0 0.0 0.0 0.0 Yes No 0.0 100.0 --0.0 --- 0.0 0.0 ----- 0.0 No 35 0.0 PP Use is the percentage of the total input-output time during which a single Peripheral and Control Processor is used. In the calculation of Peripheral and Control Processor usage, it is assumed that temporary I/O storage is provided by the 6607 System Disk, except in those cases in which the I/o operation is itself a disc file or drum operation. CP Use is the percentage of the total input-output time during which the Central Processor is used. av: LS: Var: 11/65 Average time; see main report section on this device for details. Number of lines skipped between successive printed lines. Data transmission time varies with record length. A AUERBACH ~ --- No r ~( CDC 6600 Control Data Corporation l . ( AUERBACH INFO, INC. PRINTED IN U. S. A. CDC 6600 / Control Data Corporation AUERBACH INFO, INC. PRINTED IN U. S. A. 264:011. 100 &. "'..... ~'\EDP REPORTS CONTROL DATA 6000 SERIES 6600 COMPUTER SYSTEM INTRODUCTION AUERBACH INTRODUCTION The Control Data 6600 computer system is characterized by a Central Processor that can execute up to ten instructions simultaneously and can utilize an eight-word instruction stack for register-speed program looping operations. The Central Processor functions at an internal clockcycle rate of 100 nanoseconds. The 6600 can concurrently access up to 10 core storage locations in the Central Memory, which features a basic cycle time of one microsecond per 60-bit word. The ten Peripheral Processors that form an integral part of the 6600 system have fairly complete instruction sets and individual, independent core storage units of 4,096 12-bit words, with a cycle time of one microsecond. When auxiliary mass storage is included in a 6600 system in the form of the Extended Core Storage unit, the system is well suited for time-sharing applications using the "roll-in/roll-out" mode of operation. This report concentrates upon the performance of the Control Data 6600 system in particular. All general characteristics of the 6000 Series hardware and software are described in Computer System Report 260: Control Data 6000 Series - General. The System Configuration section which follows shows the Control Data 6600 in the following standard configurations: VIlA: VIIIA: 10-Tape General System (Integrated) 20-Tape General System (Integrated). These configurations were selected because multiprogramming and multiprocessing are the 6600's standard modes of operation. To reflect this type of operation, the main processing runs and the input and output data transcription runs in our standard benchmark problems are assumed to be performed in parallel. The system configurations are arranged according to the rules in the Users' Guide, page 4:030.120, and any significant deviations from the standard speCifications are listed. The principal deviations include the ten Peripheral Processors that are standard in every 6000 Series system, and the System Disk, required for use by the SIPROS operating system. Section 260:051 provides detailed central processor timing data for the 6600. See Section 260:051 for the other characteristics of the program-compatible 6000 Series processors. System Performance measurements for the 6600 computer system are presented in Section 260:201, together with the measurements for the 6400 and 6800 systems for ease of comparison. Software for all 6000 Series systems is described in Sections 260:151 through 260:191. \, .. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 - 264:031. 100 CONTROL DATA 6000 SERIES 6600 COMPUTER SYSTEM SYSTEM CONFIGURATION SYSTEM CONFIGURATION The basic Control Data 6000 Series system configuration possibilities are summarized in report Section 260:031. This section shows the Control Data 6600 Computer System arranged in two configurations that conform to our Standard Configurations, as defined in the Users' Guide, page 4:030.120. Note that the 6681 Data Channel Converter is used in each configuration. This device permits the use of any of the peripheral units that are used with the Control Data 3000 Series computer systems • •1 10-TAPE GENERAL SYSTEM (INTEGRATED); CONFIGURATION VIlA Deviations from Standard Configuration: .•.•••••••••. card reader is 140% faster. card punch is 150% faster. 200,000 additional characters of core storage. Equipment Rental 6607 Disk System * with controller $ 4,900 6600 Central Processor with 32K 60-bit words of storage 10 Peripheral Processors, each with 4K 12-bit words of storage 41,900 10 x 12 Bus 12 Input/Output Channels ( 6602 Console Display 900 405 Card Reader (1,200 cpm) 3248 Controller 400 100 415 Card Punch (250 cpm) 3446 Controller 295 450 505 Line Printer (500 lpm) 3256 Controller 6681 Data Channel Converter 635 515 310 604 60KC Magnetic Tape Units (6) 3229 Controller 6681 Data Channel Converter 3,600 600 310 604 60KC Magnetic Tape Units (4) 3228 Controller 6681 Data Channel Converter 2,400 425 310 TOTAL: \ " * $58,050 Provided for operating system purposes. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 264:031. 200 .2 CONTROL DATA 6000 SERIES 20-TAPE GENERAL SYSTEM (INTEGRATED); CONFIGURATION VIlIA Deviations from standard Configuration: • • • • • • • . • . . • card reader is 20% faster. card punch is 25% faster. 80,000 additional characters of core storage. Equipment Rental 6607 Disk System* with controller (84 million characters) $ 4,900 6600 Central Processor with 32K 60-bit words of storage 10 Peripheral Processors, each with 4K 12-bit words of storage. / 41,900 10 x 12 Bus 12 Input/Output Channels 6602 Console Display 900 405 Card Reader (1,200 cpm) 3248 Controller 400 100 415 Card Punch (250 cpm) 3446 Controller 295 450 505 Line Printer (500 lpm) 3256 Controller 6681 Data Channel Converter 635 515 310 607 120KC Magnetic Tape Units (6) 3229 Controller 6681 Data Channel Converter 5,250 600 310 607 120KC Magnetic Tape Units (4) 3228 Controller 6681 Data Channel Converter 3,500 425 310 607 120KC Magnetic Tape Units (6) 3229 Controller 6681 Data Channel Converter 5,250 600 310 607 120KC Magnetic Tape Units (4) 3228 Controller 6681 Data Channel Converter 3,500 425 310 TOTAL: * Provided for operating system purposes. 11/65 fA AUERBACH • $71,195 \ I 264: 051. 100 ~ AUERBACH STANDARD CONTROL DATA 6000 SERIES 6600 COMPUTER SYSTEM CENTRAL PROCESSOR ED]? REPBITS CENTRAL PROCESSOR .1 GENERAL .418 Shift: . '. . . . . . . . . . . 0.3 · 11 Identity: • . . . . . . . . . Control Data 6600 Central --Processor. .42 .12 Description See Section 260:051 for a comprehensive description of the characteristics of all the Control Data 6000 Series Central Processors. See Section 264:011 for a summary of the distinguishing features of the Control Data 6600 Central Processor as used in Control Data 6600 c0mputer systems. The Instruction Times and Processor Performance Times for the Control Data 6600 Central Processor, in fixed-point and floating-point arithmetic modes, are listed below. See Paragraphs 4:050.41 and 4:050.42 of the Users' Guide for the definitions of these standard measures of central processor performance. The Processor Performance Times shown in Paragraph. 42 of this section assume that all counts, increment values, and sub-totals are maintained in the 24 central registers, and that all other operands are held in Central Memory. I \ " ( ·4 PROCESSOR SPEEDS .41 Instruction Times in Microseconds · 411 Fixed point Add-subtract: . . . . . 0.3 Multiply: . . . . . . . . . instruction Divide: . . . . . . . . . . instruction · 412 Floating point Add-subtract: . . . . . 0.4 Multiply: . . . . . . . . 1. 0 Divide: . . . . . . . . . . 2.9 · 413 Additional allowance for Indexing: . . . . . . . . . not used. Indirect addressing: • 1. 0 Recomplementing: .. 0 .414 ControlCompare: . . . . . . . . 0.9 Branch: . . . . . . . . . O. 9 Compare and branch: 0.9 · 415 Counter control Step: • . . . . . . . . . . 0.3 Step and test: . . . . . . instruction Test: . . . . . . . . . . . 0.8 .416 Edit: . . . . • . . . . . . . instruction . 417 Convert: . . . . . . . . . instruction © Fixed point .421 For random addresses c = a + b:. • . . • . . . . b = a + b: . . . . . . . . Sum N items: . . . . . c = ab: . . . . . . . . . . c = alb: . . . . . . . . . ~=~+bj= •••..•. bj=~:bj: •..•..• .423 .424 .426 .428 not available. not available. 1.0 1.0 0.6N 1.2 3.1 .422 For arrays of data - .427 not available. 1.0 1.0 0.6N Floating point Floating point .425 not available. not available. Processor Performance in Microseconds 2.0 2.0 1.2N 2.0 2.0 1.2N 1.2 Sum N Items:. . . . . . c = c + ~bj= •••.•. Branch basea on comparison Numeric data: . . . . . 2.0 + 2. IN Alphabetic data: . . . . 2. 0 + 2. IN Switching Unchecked: . . . . . . . 4.4 Checked: . . . . . . . . . 5.2 List search: . . . . . . 1. 4 + 3. ON Format control: . . . . . normally performed by Peripheral Processors. Table lookup, per comparison For a match: . . . . . . 1. 1 For least or greatest: 1. 1 For interpolation point: . . . . . . . . . . 1. 8 Bit indicators Set bit in separate location: . . . . . . . 0.3 Set bit in pattern: ... 0.3 Test bit in separate location: . . . • . . . . 1. 0 Test bit in pattern: .. 1. 3 Test AND for B bits:. 2.0 Test OR for B bits: .. 2.0 Moving With self: . . . . . . . . 1 million words/sec. With a Peripheral Processor Memory: 2 million words/sec. With an Extended Core Memory: . . . . 10 million words/sec . 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 264:052. 100 1& CONTROL DATA 6000 SERIES 6600 COMPUTER SYSTEM PERIPHERAL PROCESSORS AUERBACH STANDARD ED:!? REPBRTS PERIPHERAL AND CONTROL PROCESSORS .1 GENERAL · 11 Identity: · 12 · 418 Shift: . . . . . . . . . . . . 1. 0 . . . . Control Data 6600 Peripheral and Control Processors. Description See Section 260:052 for a comprehensive description of the functional characteristics of all the Control Data 6000 Series Peripheral and Control Processors. The Instruction Times and Processor Performance times for the Control Data 6600 Peripheral and Control Processors, in the fixed-point binary arithmetic mode, are listed below. See Paragraphs 4:050.41 and 4:050.42 of the Users' Guide for the definitions of these standard measures of processor performance. ·4 PROCESSOR SPEEDS · 41 Instruction Times in Microseconds · 411 Fixed point Add-subtract: . . . . . . 2. 0 Multiply: . . . . . . . . . not available. Divide: . . . . . . . . . . not available. .412 Floating point: not available. .413 Additional allowance for Indexing: . . . . . . . . . . 1. 0 Indirect addressing: .. 1. 0 .414 Control Compare: . • . . . . . . . not available. Branch: . . . . . . . . . . 1. 0 Compare and branch: . not available. · 415 Counter control Step: . . . . . . . . . . . . 4.0 Step and test: ... .. not available. Test: .. . . . . . . ..2.0 .416 Edit: . .. . . . . . . .. not available. · 417 Convert:. . . . . . . .. not available. 11/65 .42 Processor Performance in Microseconds · 421 For random addresses c = a +b: . . . 6.0 b = a + b: . . . . . • . . 3.0 Sum N items: . . . . . 2. ON · 422 For arrays of data ci = ai + bj= 17. 0 bj = ai + bj= . . . . . . . 14.0 Sum N items: . . . . . . 5. ON .423 Branch based on comparison Numeric data: . . .. 60 Alphabetic data: . . 60 · 424 Switching Unchecked: . . . . . 22 Checked: . . . . . . 34 List search: . . . . 14 + 10CN, where C = number of characters in the item. .425 Format control, per character Unpack: . . . . . . . . . ? Compose: . . . . . . . . ? · 426 Table lookup, per comparison For a match: . . . . 10C For least or greatest: . . . . . 25 For interpolation point: . . . . . . . . 25 · 427 Bit indicators Set bit in separate location: . . . . . . . 3 Set bit in pattern: .. 9 Test bit in separate location: . . . . . . . . 2 Test bit in pattern: .. 8 Test AND for B bits:. 8 Test OR for B bits: .. 8 .428 Moving: . . . . . . . . . . 5 + 2. 5C, where C = number of 6-bit characters moved. A AUERBACH ~ - 264:111. 100 ~ ST""RD CONTROL DATA 6000 SERIES 6600 COMPUTER SYSTEM SIMULTANEOUS OPERATIONS A-EDP \ '--- - AUERBACH REPDRTS SIMULTANEOUS OPERATIONS A Control Data 6600 computer system can concurrently: ~ .. • Execute up to 10 Central Processor machine instructions; and • Perform 10 independent peripheral programs, one in each of the Peripheral and Control Processors; and • Perform an additional 120 independent peripheral programs through use of the full complement of 12 Augmented Input-Output Buffer subsystems; and • Access up to 10 banks of Central Memory; and • Perform a mass data transfer between Central Memory and Extended Core Storage; and • Control up to 12 input-output operations, one on each Data Channel; and • Control as many further input-output operations as there are additional Data Channels and/or multiplexing and buffering capabilities of individual I/O devices and controllers. The Central Processor is normally not delayed in any way by input-output operations. However, a Peripheral and Control Processor is delayed to some extent during each I/O operation. Table I lists the amount of Peripheral and Control Processor input-output delay for each of the peripheral units that can be connected to the Control Data 6600 computer system, including several devices originally used with the Control Data 3000 Series. Also included in Table I is the amount of Data Channel time that is consumed during each input-output operation. Because the data transfer rate between Data Channels and Peripheral Processors is so high (2 million characters per second), the individual Data Channels can be effectively multiplexed between several input-output devices. The extent of Data Channel multiplexing varies from one peripheral device to another and is therefore discussed in the individual report sections that describe the various peripheral devices. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 CONTROL DATA 6000 SERIES 264: 111. 101 TABLE I: SIMULTANEOUS OPERATIONS DEVICE Time, msee. PP Use% CP Use % Stop Time Data Transmission Start Time Cycle Time, msee. Channel Use Time, PP Use % msee. CP Use % Time, msee. Channel Use PP Use % CP Use % Channel Use --- --------- ----- ------- --------- 828, 838 Disk Files 52.0 250 av 0.0 0.0 1 msee Var Yes 0.0 --- 40.0 25.0 25.0 66.6 52.5 77.5 av 70.0 av 70.0 av 0.0 0.0 0.0 --0.0 Yes Yes Yes Yes Yes Var Var Var Var Var 0.0 0.0 0.0 0.0 0.0 Yes Yes Yes Yes Yes 0.0 0.0 0.0 0.0 0.0 --- 93.0 av 59.3 av 100.0 100.0 100.0 100.0 100.0 6.4 or 11.0 200.0 200.0 200.0 200,0 200.0 0.0 852 Disk Transport 853 Disk Transport 854 Disk Transport 6603 Disk File 6607/660B Disk File 3236 Drum Storage 34.4 34.4 17.2 17.2av 17.2 av 8.6 av 0.0 0.0 0.0 0.0 0.0 0.0 1 maee ? ? Var Var Var 16.B 200.0 200.0 0.0 0.0 0.0 Yes Yes Yes 0.0 0.0 0.0 --- --- 0.0 0.0 0.0 --- Var 0.0 ? No 0.0 --- ----- 50.0 1B.0 0.0 0.0 Yes 32.0 <0.1 0.0 Yes 0.0 --- --- 50.0 42.0 0.0 0.0 Yes B.O <0.1 0.0 Yes 0.0 --- --- --- 240.0 4B.0 0.0 0.0 Yes 190.0 <0.1 0.0 Yes 2.0 0.0 0.0 No 861 Drum Storage 862 Drum ·Storage 6630 Extended Core Storage 405 Card Reader. 1,200 cpm, unbuffered 405 Card Reader I 1,200 cpm, buffered 415 Card Punch, 250 cpm, unbuffered 415 Card Punch, 250 cpm, buffered 523 Card Punch, 100 cpm, unbuffered 523 Card Punch, 100 cpm, buffered ----- 0.0 0.0 --- --- --- ----- --- --- 240.0 4B.0 <0.1 0.0 2.2 maee 190.0 ·<0.1 0.0 No 2.0 0.0 0.0 No 600.0 B4.0 0.0 0.0 Yes 514.0 <0.1 0.0 Yes 2.0 0.0 0.0 No 600.0 B4.0 <0.1 0.0 2.2 maee 514.0 <0.1 0.0 No 2.0 0.0 0.0 No 240.0 4S.0 0.0 0.0 Yes 190.0 <0.1 0.0 Yes 2.0 0.0 0.0 No 240.0 4B.0 <0.1 0.0 2.2 msee 190.0 <0.1 0.0 No 2.0 0.0 0.0 No 544 Card PWlch, 250 cpm, unbuffered 544 Card Punch, 250 cpm, buffered 3691 Paper Tape Reader, 350 cps 3691 Paper Tape Punch, 110 cps 3694 Paper Tape Reader, 1, 000 cps 3694 Paper Tape Punch, 110 cps 3152 Line Printer, 150lpm 1403 Model 2 Printer, 600 lpm 1403 Model 3 Printer, 1,100 Ipm 501 Printer, 1,000 lpm 505 Printer, 500 lpm 601 Magnetic 20.S KC 603 Magnetic 41.7 KC 604 Magnetic 60.0 KC 606 Magnetic 83.4 KC 607 Magnetic 120 KC 626 Magnetic 240 KC 692 Magnetic 30 KB 694 Magnetic 60 KB 696' Magnetic 90 KB Tape Unit, Tape Unit, Tape Unit, Tape Unit, Tape Unit, Tape Unlt, Tape Unit, Tape Unit. Tape Unit, ' 3692 Program Controlled Input-Output Typewriter 3293 Incremental Plotter Note: 2.9 ? 0.0 0.0 Yes 2.9 <0.1 0.0 Yes 2.0 0.0 0.0 No 9.0 ? 0.0 0.0 Yes 9.0 <0.1 0.0 Yes 3.0 0.0 0.0 No 1.0 ? 0.0 0.0 Yes 1.0 <0.1 0.0 Yes O. S 0.0 0.0 No 9.0 ? 0.0 0.0 0.0 Yes 9.0 <0.1 0.0 Yes 3.0 0.0 0.0 No --- --- --- 375.0 ? 0.0 0.0 0.0 No 0.0 ----- ----- --- 0.0 0.0 --- 0.0 --- 0.1 mseo 25 + 9.7LS 0.1 maee 20 + 5LS 0.1 msee 20 + 5LS 0.1 msec 13 + 6.7LS O.lmsec 13 + 6.7LS --- 3.0 --- 2.75 400 + 9.7LS 100 + 5LS 55 + 5LS 60 + 6.7LS 120 + 6.7LS SO.O ? 0.0 35.0 ? 0.0 --- ----- 45.0 ? 0.0 --- --- 105.0 ? 0.0 0.0 0.0 Yes Var 4.1 0.0 Yes 0.0 0.0 Yes Var B.3 0.0 Yes 0.0 0.0 No 0.0 0.0 No 0.0 0.0 No 0.0 0.0 No 3.0 0.0 0.0 No 2.25 0.0 0.0 No ----- 2.75 0.0 0.0 Yes Var 12.0 0.0 Yes 2.25 0.0 0.0 No 2.75 0.0 0.0 Yes Var 16.7 0.0 Yes 1.75 0.0 0.0 No --- 2.75 0.0 0.0 Yes Var 24.0 0,0 Yes 1.75 0.0 0.0 No --- 2.75 0.0 0.0 Yes Var 4S.0 0.0 Yes 1.75 0.0 0.0 No --- ? 0.0 0.0 Yes Var ? 0.0 Yes ? 0.0 0.0 No ? 0.0 0.0 Yes Var ? 0.0 Yes ? 0.0 0.0 No ? 0.0 0.0 Yes Var ? 0.0 Yes ? 0.0 0.0 No 0.0 100.0 --0,0 --- --- Var No 0.0 0.0 0.0 0.0 Yes No 0.0 100.0 --- --- --- ----67 3.3 or 5.0 0.0 No 0.0 PP Use is the percentage of the total input-output time during which a single Peripheral and Control Processor is used. In the calculation of Peripheral and Control Processor usage, it is assumed that temporary I/O storage is provided by the 6607 System Disk, except in those cases in which the I/O operation is itself a disc file or drum operation. CP Use is the percentage of the total input-output time during which the Central Processor is used. av: LS: Var: 11/65 0.0 Average time; see main report section on this device for details. Number of lines skipped between successive printed lines. Data transmission time varies with record length, A AUERBACH ~ No \ CDC 6800 Control Data Corporation \ ",--- AUERBACH INFO, INC. PRINTED IN U. S. A. - CDC 6800 Control Data Corporation AUERBACH INFO, INC. PRINTED IN U. S. A. - 265:011. 100 CONTROL DATA 6000 SERIES 6800 COMPUTER SYSTEM INTRODUCTION INTRODUCTION The Control Data 6800 computer system features a Central Processor that can execute up to ten instructions simultaneously at an internal clock-cycle rate of 25 nanoseconds. The Central Processor also utilizes an eight-word instruction stack for register-speed program looping operations. Up to 10 banks of Central Memory can be accessed concurrently, with a basic cycle time of 250 nanoseconds per 60-bit word. The ten Peripheral Processors that form an integral part of the 6800 system utilize fairly complete instruction sets and independent core storage units of 4,096 12-bit words, with a cycle time of 250 nanoseconds. When auxiliary mass storage is included in a 6800 system in the form of the Extended Core Storage unit, the system is well suited for time-sharing applications using the "roll-in/roll-out" mode of operation. This report concentrates upon the performance of the Control Data 6800 system in particular. All general characteristics of the 6000 Series hardware and software are described in Computer System Report 260: Control Data 6060 Series - General. The System Configuration section which follows shows the Control Data 6800 in the following standard configurations: VIIA: VIIIA: 10-Tape General System (Integrated) 20-Tape General System (Integrated). These configurations were selected because multiprogramming and multiprocessing are the 6800' s standard modes of operation. To reflect this type of operation, the main processing runs and the input and output data in our standard benchmark problems are assumed to be performed in parallel. The system configurations are arranged according to the rules in the Users' Guide, page 4:030.120, and any significant deviations from the standard specifications are listed. The principal deviations include the ten Peripheral Processors that are standard in every 6000 Series system, and the System Disk, required for use by the SIPROS operating system. Section 260:051 provides detailed central processor timing data for the 6800. See Section 260:051 for the other characteristics of the program-compatible 6000 Series processors. System Performance measurements for the 6800 computer system are presented in Section 260:201, together with the measurements of the 6400 and 6600 systems for ease of comparison. Software for all 6000 Series systems is described in Sections 260:151 through 260:191. ( © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 \ -£ I '''-- 265:031. 100 /Ii& - AUERBAC~ SI .. ,. .. CONTROL DATA 6000 SERIES 6800 COMPUTER SYSTEM SYSTEM CONFIGURATION EDP REPDR1'S SYSTEM CONFIGURATION The basic Control Data 6000 Series system configuration possibilities are summarized in report Section 260:031. This section shows the Control Data 6800 Computer System arranged in two configurations that conform to our Standard Configurations, as defined in the Users' Guide, page 4:030.120. Note that the 6681 Data Channel Converter is used in each configuration. This device permits the use of any of the peripheral units that are used with the Control Data 3000 Series computer systems • .1 10-TAPE GENERAL SYSTEM (INTEGRATED); CONFIGURATION VIlA Deviations from Standard Configuration: •• . • • • . • • . . . card reader is 140% faster. card punch is 150% faster. 200,000 additional characters of core storage. Equipment Rental 6607 Disk System* with controller (84 million characters) $ 4,900 6800 Central Processor with 32K 60-bit words of storage 10 Peripheral Processors, each with 4K 12-bit words of storage 41,900 10 x 12 Bus 12 Input/Output Channels * 6602 Console Display 900 405 Card Reader (1,200 cpm) 3248 Control 400 100 415 Card Punch (250 cpm) 3446 Controller 295 450 505 Line Printer (500 lpm) 3256 Control 6681 Data Channel Converter 635 515 310 604 60KC Magnetic Tape Units (6) 3229 Controller 6681 Data Channel Converter 3,600 600 310 604 60KC Magnetic Tape Units (4) 3228 Controller 6681 Data Channel Converter 2,400 425 310 TOTAL: $57,740 Provided for operating system purposes. © 1965 AUERBACH Corporotion and AUERBACI:i Info, Inc. 11/65 CONTROL DATA 6000 SERIES 265:031. 200 .2 20-TAPE GENERAL SYSTEM (INTEGRATED); CONFIGURATIONVIIIA Deviations from standard Configuration: • • • • • • • • • • • • card reader is 20% faster. card punch is 25% faster. 80,000 additional characters of core storage. Equipment Rental 6607 Disk System * with controller (84 million characters) $ 4,900 6800 Central Processor with 32K 60-bit words of storage 10 Peripheral Processors, each with 4K 12-bit words of storage 41,900 10 x 12 Bus 12 Input/Output Channels 6602 Console Display 900 405 Card Reader (1,200 cpm) 3248 Controller 400 100 415 Card Punch (250 cpm) 3446 Controller 295 450 505 Line Printer (500 lpm) 3256 Controller 6681 Data Channel Converter 635 515 607 120KC Magnetic Tape Units (6) 3229 Controller 6681 Data Channel Converter 5,250 600 310 607 120KC Magnetic Tape Units (4) 3228 Controller 6681 Data Channel Converter 3,500 425 310 607 120KC Magnetic Tape Units (6) 3229 Controller 6681 Data Channel Converter 5,250 600 310 607 120KC Magnetic Tape Units (4) 3228 Controller 6681 Data Channel Converter 3,500 425 310 TOTAL: * 11/65 Provided for operating system purposes. A AUERBACH ~ $70,885 -1. 265:051.100 "AND'" CONTROL DATA 6000 SERIES 6800 COMPUTER SYSTEM CENTRAL PROCESSOR /AEDP - AUERBAC~ REPORTS CENTRAL PROCESSOR .1 GENERAL · 11 Identity: ..•••..•.. Control Data 6800 Central Processor. · 12 Description See Section 260:051 for a comprehensive description of the characteristics of all the Control Data 6000 Series Central Processors. .416 Edit: . . • . . • . . • . . • instruction not available • .417 Convert: .•.••••.• instruction not available. .418 Shift: •••.•••••••• 0.075 .42 .421 See Section 265:011 for a summary of the distinguishing features of the Control Data 6800 Central Processor as used in Control Data 6800 computer systems. The Instruction Times and Processor Performance Times for the Control Data 6800 Central Processor, in fixed-point and floating-point arithmetic modes, are listed below. See Paragraphs 4:050.41 and 4:050.42 of the Users' Guide for the definitions of these standard measures of central processor performance. The Processor Performance Times shown in Paragraph. 42 of this section assume that all counts, increment values, and sub-totals are maintained in the 24 central registers, and that all other operands are held in Central Memory. , ',,-- ( .4 PROCESSOR SPEEDS • 41 Instruction Times in Microseconds • 411 Fixed point Add-subtract: . . . . . 0.08 Multiply: ••••••.• instruction not available. Divide: ••.••..•.. instruction not available. • 412 Floating point Add-subtract: .•••. 0.1 Multiply: ••••.••. 0.25 Divide: •..•••.••• O. 73 .413 Additional allowance for Indexing: ••.•.•.. not used. Indirect addressing: . 0.25 Recomplementing: •. 0 .414 ControlCompare: .•••.•.. O. 23 Branch: ..••••.•• 0.23 Compare and branch: 0.23 • 415 Counter control Step: ••.•••••... 0.08 Step and test: •••.• instruction not available. Test: •.....••••• 0.20 .422 .423 .424 .425 .426 .427 .428 Processor Performance in Microseconds Fixed Floating point point For random addresses - - c = a + b: ..•.••.• 0.25 0.25 b = a + b: .••.•••• 0.25 0.25 Sum N items: .•..• O. 15N 0.15N 0.30 c = ab: ...••••.• c = alb: . • . . . . • • • 0.78 Floating Fixed point point For arrays of data 1.25 ci = ai + br • • . . • . . 1. 25 1.25 bj = ai -: bj: .•••••• 1.25 0.3N Sum N ltems: ••••• O. 3N 0.3 c = c + aibr •.•••• Branch based on comparison Numeric data: •..•• O. 5 + O. 5N Alphabetic data: ••.. O. 5 + O. 5N Switching Unchecked: •••••. 1. 1 Checked: •.•••••• 1. 3 List search: •••••• 0.35 + O. 75N Format control: ••..• normally performed by Peripheral Processors • Table lookup, per comparison For a match: ••••• 0.45 For least or greatest: 0.28 For interpolation point: ••••••••• 0.45 Bit indicators Set bit in fleparate location: ••.•••• 0.05 Set bit in pattern: .. 0.30 Test bit in separate location: ••.•••• 0.20 Test bit in pattern: •• ? Test AND for B bits:. 0.40 Test OR for B bits: • O. 80 Moving With self: •••••.•• 4 million words/sec. With a Peripheral Processor Memory: 8 million words/sec. With an Extended Core Memory: ••• 40 million words/sec. © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 265:052. 100 1& CONTROL DATA 6000 SERIES 6800 COMPUTER SYSTEM PERIPHERAL PROCESSORS AUERBACH STANDARD EDP REPORTS PERIPHERAL AND CONTROL PROCESSORS .1 GENERAL .11 Identity: .12 .418 Shift: . . . . • • • . . • . . 0.25 Control Data 6800 Peripheral and Control Processors . 42 Description See Section 260:052 for a comprehensive description of the functional characteristics of all the Control Data 6000 Series Peripheral and Control Processors. The Instruction Times and Processor Performance times for the Control Data 6800 Peripheral and Control Processors, in the fixed-point binary arithmetic mode, are listed below. See Paragraphs 4:050.41 and 4:050.42 of the Users' Guide for the definitions of these standard measures of processor performance. .4 PROCESSOR SPEEDS .41 Instruction Times in Microseconds .411 Fixed point Add-subtract: . . . . . 0.5 Multiply: . . . . . . . . not available. Divide: . • . . . . . . . . not available. .412 Floating point: .•...• not available. .413 Additional allowance for Indexing: . . . • . . . . 0.25 Indirect addressing: . 0.25 .414 Control Compare: . . . . • . . . not available. Branch: . . . . • . . . . 0.25 Compare and branch:. not available. .415 Counter control Step: •...••••... 1. 0 Step and test: . . . • . . not available. Test: . . . . . . . . . . • 0.5 . 416 Edit: . . . . . . . • . . . • not available . . 417 Convert: . . . . . • • • • . not available • 11/65 Processor Performance in Microseconds .421 For random addresses c=a+b: . . • . • . • . 1.5 b=a+b: . • . • . . • . 1.5 Sum N items: .••.. O. 5N .422 For arrays of data ci = ai + bj= ...•••• 4.25 bj = ai + bj= . . . . . . . 3. 50 Sum N items: . . • . . . 1.25N .423 Branch based on comparison Numeric data: . . . . . 15 Alphabetic data: ...• 15 . 424 SwitchingUnchecked: ..••..• 5. 5 Checked: . . . . . . . • 8.5 List search: . . • . . . 3.5 + 2. 5CN, where C = number of characters in the item. .425 Format control, per character Unpack: . . . . . • . . • ? Compose: . . . . . . • . ? .426 Table lookup, per comparison For a match: . . . • . 2. 5C For least or greatest: 6.25 For interpolation point: . . . . . . . . . 6.25 .427 Bit indicators Set bit in separate location: . . . . . . . . 0.75 Set bit in pattern: ..• 2.25 Test bit in separate location: . . • • . . . O. 5 Test bit in pattern: .. 2.0 Test AND for B bits: 2. 0 Test OR for B bits: .. 2.0 .428 Moving: . . . . . . . . . . 1. 25 + O.6C, where C = number of 6- bit characters moved. A AUERBACH ~ r-- 265: 111. 100 £. ~EDP STAND'" AUERBACH CONTROL DATA 6000 SERIES 6800 COMPUTER SYSTEM SIMULTANEOUS OPERATIONS REPORTS SIMULTANEOUS OPERATIONS \. A Control Data 6800 computer system can concurrently: • Execute up to 10 Central Processor machine instructions; and • Perform 10 independent peripheral programs, one in each of the Peripheral and Control Processors; and • Access up to 10 banks of Central Memory; • Perform a mass data transfer between Central Memory and Extended Core Storage; and • Control up to 12 input-output operations, one on each Data Channel; and • Control as many further input-output operations as there are additional Data Channels and/or multiplexing and buffering capabilities of individual I/O devices and controllers. an~ The Central Processor is normally not delayed in any way by input-output operations. However, a Peripheral and Control Processor is delayed to some extent during each I/O operation. Table I lists the amount of Peripheral and Control Processor input-output delay for each of the peripheral units that can be connected to the Control Data 6800 computer system, including several devices originally used with the Control Data 3000 Series. Also included in Table I is the amount of Data Channel time that is consumed during each input-output operation. Because the data transfer rate between Data Channels and Peripheral Processors is so high (8 million characters per second), the individual Data Channels can be effectively multiplexed between several input-output devices. The extent of Data Channel multiplexing varies from one peripheral device to another, and is therefore discussed in the individual report sections that describe the various peripheral devices. /" I i \" © 1965 AUERBACH Corporation and AUERBACH Info, Inc. 11/65 \" • 5" ", 265: III. 101 CONTROL DATA 6000 SERIES TABLE I: SIMULTANEOUS OPERATIONS Time, rnsee. ~ I. " PP Use% CP Use % Channel Use Time, msee. PP Use % Stop Time CP Use % Channel Use Time. msee. PP Use % CP Use % Channel Use --- 0.0 1 msee Var 1.6 or 2.2 0.0 Yes 0.0 --- --- 100.0 0.0 Yes Var 200.0 0.0 Yes 0.0 0.0 --- --- 100.0 0.0 Yes Var 200.0 0.0 Yes 0.0 0.0 100.0 0.0 Yes Var 200.0 0.0 Yes 0.0 0.0 100.0 --- Yes Var ? 0.0 Yes 0.0 0.0 ------- 59.3 av 100.0 0.0 Yes Var ? 0.0 Yes 0.0 0.0 --- --------- 34.4 17.2 av 0.0 0.0 1 msee Var 4.2 0.0 Yes 0.0 861 Drum Storage 34.4 17.2 av 0.0 0.0 ? Var ? 0.0 Yes 0.0 ------- --- 828, 838 Disk Files 52.0 250 av 852 Disk Transport 40.0 77.5 av 853 Disk Transport 25.0 70.0 av 854 Disk Transport 25.0 70.0 av 6603 Disk File 66.6 93.0 av 6607/6608 Disk File 52.5 3236 Drum Storage 0.0 862 Drum Storage 17.2 B.6 av 0.0 0: 0 ? Var ? 0.0 Yes 0.0 ------- "6830 Extended Core Storage --- 0.0 0.0 0.0 --- Var 0.0 ? No 0.0 --- --- --- 405 Card Reader, 1,200 CPlll. unbuffered 50.0 18.0 0.0 0.0 Yes 32.0 <0.1 0.0 Yes 0.0 --- 50.0 42.0 0.0 0.0 Yes 8.0 <0.1 0.0 Yes 0.0 --- ----- --- 405 Card Reader, 1,200 cpm, buffered 240.0 48.0 0.0 0.0 Yes 190.0 <0.1 0.0 Yes 2.0 0.0 0.0 No 240.0 48.0 <0.1 0.0 2.2 msec 190.0 <0.1 0.0 No 2.0 0.0 0.0 No 600.0 84.0 0.0 0.0 Yes 514.0 <0.1 0.0 Yes 2.0 0.0 0.0 No 600.0 84.0 <0.1 0.0 2.2 msse 514.0 <0.1 0.0 No 2.0 0.0 0.0 No 240.0 48.0 0.0 0.0 Yes 190.0 <0.1 0.0 Yes 2.0 0.0 0.0 No 240.0 4B.0 <0.1 0.0 2.2 msee 190.0 <0.1 0.0 No 2.0 0.0 0.0 No 415 Card Punch, 250 cpm, unbuffered 415 Card Punch, 250 cpm, buffered 523 Card Punch, 100 cpm, unbuffered 523 Card Punch, 100 cpm, buffered 544 Card Punch. 250 cpm, unbuffered 544 Card Punch, 250 cpm, buffered .:. Data Transmission Start Time Cycle Time, msee. DEVICE --- --- --- 3691 Paper Tape Reader, 350 cps 2.9 ? 0.0 0.0 Yes 2.9 <0.1 0.0 Yes 2.0 0.0 0.0 No 9.0 ? 0.0 0.0 Yes 9.0 <0.1 0.0 Yes 3.0 0.0 0.0 No 1.0 ? 0.0 0.0 Yes 1.0 <0.1 0.0 Yes O. B 0.0 0.0 No 9.0 ? 0.0 0.0 Yes 9.0 <0.1 0.0 Yes 3.0 0.0 ~. No 400 + 9.7LS 100 + 5LS 55 + 5LS 60 + 6.7LS 120 + 6.7LS 0,0 --- --- 375 <0.1 0.0 0.1 msec 0.0 0.0 No --- BO <0.1 0.0 0.1 msec 0.0 0.0 No --- 35 <0.1 0.0 0.1 meec 0.0 0.0 No --- 45 <0.1 0.0 0.1 meec 0.0 0.0 No --- 105 <0.1 0.0 0.1 meec 25 + 9.7LS 20 + 5LS 20 + 5LS 13 + 6.7LS 13 + 6.7LS 0.0 0.0 No ----- 3691 Paper Tape Punch, 110 cps 3694 Paper Tape Reader. 1,000 cps 3694 PaRer Tape Punch, ~. 110 cps 3152 Line Printer, 150lpm 1403 Model 2 Printer, 600lpm 1403 Model 3 Printer, l,100lpm 501 Printer, 1,000 Ipm 505 Printer, 500lpm 601 Magnetic Tape Unit, 20.B KC 603 Magnetic Tape Unit. 41.7 KC 604 Magnetic Tape Unit, 60.0 KC 606 Magnetic Tape Unit. 83.4 KC 607 Magnetic Tape Unit, 120 KC 626 Magnetic Tape Unit, 240 KC ' 692 Magnetic Tape Unit, 30 KB 694 Magnetic Tape Unit. 60 KB 696 Magnetic Tape Unit. 90 KB 3692 Program COll;trolled Input-Output Typewriter 3293 Incremental Plotter Note: 0.0 ----- 0.0 --- 0.0 --- ----------- 3.0 0.0 0.0 Yes Var 1.1 0.0 Yes 3.0 0.0 0.0 No 2.75 0.0 0.0 Yes Var 2.1 0.0 Yes 2.25 0.0 0.0 No --- 2.75 0.0 0.0 Yes Var 4.0 0.0 Yes 2.25 0.0 0.0 No --- 2.75 0.0 0.0 Yes Var 4.3 0.0 Yes 1. 75 0.0 0.0 No --- 2.75 0.0 0.0 Yes Var 6.0 0.0 Yes 1. 75 0.0 0.0 No --- 2.75 0.0 0.0 Yes Var 12.0 0.0 Yes 1. 75 0.0 0.0 No --- ? 0.0 0.0 Yes Var ? 0.0 Yes ? 0.0 0.0 No --- ? 0.0 0.0 Yes Var ? 0.0 Yes ? 0.0 0.0 No --- ? 0.0 0.0 Yes Var ? 0.0 Yes ? 0.0 0.0 No --0.0 --- --- Var No 0.0 0.0 0.0 0.0 Yes No 0.0 100.0 --- --- --- 67 3.3 0.0 0.0 100.0 0.0 No 0.0 or 5.0 PP Use is the percentage of the total input-output time during which a single Peripheral and Control Processor is used, In the calculation of Peripheral and Control Processor usage, it is assumed that temporary I/O storage is provided by the 6607 System Disk, except in those cases in which the I/O operation is itself a disc file or drum operation. CP Use is the percentage of the total input-output time during which the Central Processor is used. av: Average time; see "main report section on this device for details. Number of lines skipped between successive printed lines. Var: Data transmission time varies with record length, LS: 1I/65 0 fA AUERBACH ~ 0.0 No
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-c041 52.342996, 2008/05/07-21:37:19 Create Date : 2018:05:10 10:11:48-08:00 Modify Date : 2018:05:11 14:14:17-07:00 Metadata Date : 2018:05:11 14:14:17-07:00 Producer : Adobe Acrobat 9.0 Paper Capture Plug-in Format : application/pdf Document ID : uuid:359dfac7-1706-d84b-b20e-9a9e4c82807c Instance ID : uuid:c83ebdca-1f9b-c64e-a6c9-478dbf402777 Page Layout : SinglePage Page Mode : UseOutlines Page Count : 1041EXIF Metadata provided by EXIF.tools