Z33 1021 0_2020_Processing_Unit_FETOM_May68 0 2020 Processing Unit FETOM May68
Z33-1021-0_2020_Processing_Unit_FETOM_May68 Z33-1021-0_2020_Processing_Unit_FETOM_May68
User Manual: Z33-1021-0_2020_Processing_Unit_FETOM_May68
Open the PDF directly: View PDF .
Page Count: 193
Download | |
Open PDF In Browser | View PDF |
ll) g5~ Field Engineering Theory of Operation IBM Confidential ~ @~ @ Processing Unit System/360 Model 20 (Machines with serial no. 50,000 and above) Z33-1021-0 Preface This manual describes the IBM 2020 Central Processing Unit for the IBM System/360 Model 20 (Machines with serial no. 50,000 and above). It also defines the relationship of the 2020 Processing Unit to the System/360 Model 20 and to the input/output devices to which it may be connected. Field Engineering Maintenance Diagrams manual, 2020 Processing Unit, System/360 Model 20 (Machines with serial no. 50,000 and above), Form Z33-1024-O is complementary to this manual and is referenced in the text as "FEMDM". First Edition This manual contains preliminary information and is subject to change without further notice. A form is provided at the back of this publication for reader's comments. If the form has been removed, comments may be addressed to IBM Corporation, 112 East Post Road, White Plains, N.Y. 10601, for the attention of Publishing Operations. ii Contents Chapter 1. Introduction IBM System/360 Model 20 Input/Output Devices . 2501 Card Reader, Models AI, A2 2560 Multi·Function Card Machine 2520 Card Read Punch. 1442 Card Punch, ModelS 2203 Printer, Model Al 1403 Printer, Models 2,7, Nl . 2152 Printer ·Keyboard 2415 Magnetic Tape Unit . . 2311 Disk Storage Drive Binary Synchronous Communications Adapter (BSCA) 1419 Magnetic Character Reader • 1259 Magnetic Character Reader Programming Data Formats Fixed Point Data Decimal Data Logical Data . Sign Standardization Machine Instruction Formats RR Format RX Format SI Format SS Format Indexing. Data Transfer Principles CPU· I/O Devices Burst Mode . Time Sharing Mode • Overlap Mode 1-17 IBM 2020 Central Processing Unit (CPU) Operating Principles Micro- Instruction Operating Principles CPU Basic Operations . Micro-Opemtions Local Store . Micro-Instruction Formats. I/O Micro-Instructions . Circuit Controlled Manual Operations (MANOP's) Storage Alter/Fill Storage Display IS can Storage Test . LS Register Alter/Display ICPL . CPU Login . Cycle Steal Operations I/O Interference. I/O Service Phases . Program Levels . Program Level Switching Program Trapping Cycle Stealing CPU Data Flow . Internal Data FOLmats Main Storage Storage Address Register (SAR) Storage Data Register (SDR) . Inhibit Switch Operation Register (OP REG) . Operation Control Unit (OCU) Program Level Control (PL Control) 1-19 1-19 1·19 1·22 1-22 1-22 1-23 1-26 1-27 1-27 1·27 1-28 1·28 1·28 1·28 1-29 1-29 1-29 1-29 1-30 1-31 1·31 1-31 1·31 1-31 1·33 1-34 1·34 1-34 1·34 1-35 1- 1 1- 1 1- 3 1- 3 1· 4 1- 4 1- 4 1- 5 1- 5 1- 5 1- 6 1- 6 1- 7 1- 7 1- 7 1· 7 1- 7 1·10 1-10 1·11 1-11 1-11 1·12 1-13 1-13 1-14 1-16 1·16 1·17 1-17 Local Store (LS) Modify Address·Register (MAR) Modifier . Logical Unit . Shift Unit (SU) Invert Switch Arithmetic·Logic Unit (ALU) I/O Bus Out and In . CPU Cycle Steal Control Chapter 2. Functional Units CPU Basic Timing Oscillator Short Time Clock Run Control . CPU Start CPU Start by Power On CPU Start by Operating Start Key Continuously Alter or Display. CPU Start by Operating the Control Program Load Key CPU Start by Operating the System Reset or the Load Key CPU Stops Common CPU Stops Normal CPU Stops . CPU Check Stops CPU Stops for CE Operations . Normal CE CPU Stops CE Check Stop CPU Reset Core Storage. Magnetic Core Theory Writing into Core Reading out of Core Adlilressing . Eight· K Addressing Four· K Addressing Module Selection Addressing· Auxiliary Storage Core Storage Arrays Two usec and Four usec Core Storage Arrays Eight· K Array . Four· K Array . Drive Current Generation· Four·usec Storage Drive Current Generation· Two-usec Storage Inhibit/Sense· Four·usec Storage. Inhibit Driver Sense Amplifier. Inhibit/Sense· Two-usec Storage Inhibit Driver Sense Amplifier. Timing· Four·usec Storage Four·usec Storage Clock Timing· Two·usec Storage. Storage Address Register SAR Input Control . LS to SAR ALUto SAR. SAR Output. SAR Powering SAR Check . SAR Display. 1-35 1-35 1·36 1·36 1-36 1·37 1-37 1-38 1-38 2· 1 2222· 22222- 1 1 1 5 5 5 7 7 7 2-12 2·12 2-12 2-14 2-14 2-15 2-15 2-16 2-16 2-18 2-18 2-19 2-19 2-19 2-20 2-20 2-21 2-21 2-21 2-23 2·23 2-25 2-28 2·30 2-31 2-32 2-32 2-32 2-32 2-33 2-33 2-35 2-35 2-37 2-37 2-38 2-38 2-38 2-38 2-38 2-39 iii Storage Data Register SDR Parity . SDR Output. SDR Display. Inhibit Switch Normal Inhibit Operations. SDR to Inhibit . ALU to Inhibit . Mixed ALU/SDR to Inhibit Inhibit Cycle Steal Inhibit Check Inhibit LOG • Operation Control OP Register • . OP REG Input OP REG Input for MANOP OP REG Output. OP REG Decode OP REG Bits 4 to 7 . OP REG Bits 8 to 15 OP REG Display Cycle Control Cycle Control Circuits. . . . . . . . Cycle Control for Operations with Automatic Length Count. . . . . . . . . . . . . . . . Move Binary Arithmetic, and Logical Instructions with ALC . End OP ALC . ..... Packed Decimal Instructions with ALC Length Count Latches CLC with ALC . EndOp SENS or CTRL with ALC SENS with ALC . CTRL with ALC Cycle Control for MANOP's ICPL . Storage Scan or Fill . Storage Test . Invert Parity Latch . Long Time Clock Long Time Clock Latches Long Time Clock Start and Stop Reset Clock . Normal Stop. Check Stop . . . . . Single Cycle or Single Micro- Instruction Stop Manual Reset Clock. Clock Functions for Cycle Stealing Local Store . . . . Local Store and Local Store Control . Local Store • LS Addressing LS Input Control Data forced during CPU LOG in LS Ou tpu t Control . LS Zone Selection . • . . . . . Zone Selection depending upon Program Level • PL REG. NewPL . Allow PL Switching . .. Changing of Old PL.. Alternating Use of Old and New PL Old/New PL during CPU Log in Zone Selection for Cycle Stealing. CE Zone Selection . LS Register Selection . Variable ~Addresses Fixed X-Addresses . Fixed X-Address 0 Fixe:d X-Address 1 Fixed X-Address 2 Fixed X-Address 3 iv 2-39 2·39 2-39 2-39 2-39 2-40 2-40 2-40 2-40 2-41 2-41 2-42 2-43 2-43 2-43 2-43 2-43 2-44 2-44 2-44 2-45 2-45 2-45 2-46 2-47 2-47 2-48 2-48 2-48 2-49 2-49 2-50 2-50 2-50 2-50 2-51 2-52 2-53 2-53 2-54 2-54 2-55 2-55 2-55 2-55 2-56 2-56 2-57 2-57 2-57 2-57 2-57 2-57 2-58 2-58 2-58 2-59 2-59 2-60 2-60 2-60 2-61 2-61 2-61 2-62 2-62 2-63 2-63 2-63 2-63 2-63 Fixed X-Address 4 Fixed X-Address 5 Fixed X-Address 6 Fixed X-Address 7 LS Write. MAR and Modifier . MAR. MAR Inpu t Control. Branch Go Test for MAR zero Test for MAR minus Test for MAR plus . Test for Address Check. Address and Halfword Boundary Check Modifier . Modifier Control Modifier Circuits Modifier Parity Correction. Modifier Check . Logical Unit . FDR and Invert Switch. FDR Set. LS to FDR ALUto FDR • I/O Bus to FDR . FDR Parity Correction. Invert Switch Invert Switch Parity • TRBS Invert Switch Parity. Invert Switch Display TDR and Shift Unit. TDR . • Eight Shift Eight Shift Parity Shift Unit Shift by 2 or 4 . No Shift Control for ADD! Normalize Sign . Suppress . Test Sign. Test Packed Byte Data Bus Output Shift U nit Parity Arithmetic - Logic Unit Six Correction Circuits . •. ALU Parity Prediction and Correction ... Correction of the Predicted Parity if Six Correction Condition Code Latches Set CC and Carry Allow CC Setting I/O Bus Out and In . I/O Bus Out . Address Bus Out OP REG to Address Bus I/O Display Address Out Data Bus Out Data Bus Parity . ... Control Strobes for SENSE and CTRL • • SENSE Strobe and SENSE Control Strobe Sense Reset and CTRL Strobe. I/O Display . . I/O Bu s Powering I/O Bus In Bus in Control CPU SENSE. I/O SENSE • Special Purpose Latches Detailed LOG Request Latch ASCII Latch . Interrupt Control CPU Cycle Steal Control Cycle Steal Interface 2-63 2-63 2-63 2-63 2-63 2-65 2-65 2-65 2-65 2-65 2-66 2-66 2-66 2-66 2-67 2-67 2-68 2-68 2-68 2-70 2-70 2-70 2-71 2-71 2-71 2-71 2-72 2-72 2-73 2-73 2-74 2-74 2-74 2-75 2-75 2-76 2-76 2-77 2-78 2-78 2-78 2-79 2-79 2·80 2-83 2-83 2-86 2-88 2-88 2-88 2-90 2-92 2-95 2-96 2-96 2-96 2-96 2-98 2-99 2-99 2-99 2-99 2-100 2-100 CS Request Any CS Request. Cycle Steal Latch Device Selection CS Control CS Read/CS Write CS Halfword/CS Byte CS lncrement/CS Decrement CS Data In CS Data Out . CS Modifier Control Data Address Updating during CS Field Length Updating during CS . CS Counter Zero CS Counter Carry CS Modified SAR Bit 15 Checks during CS Operations CS Address Check CS Inhibit Check CS Interface Check . CS Test 2-102 2-102 2-103 2-103 2-104 2-104 2-104 2-104 2-106 2-106 2-107 2-107 2-109 Chapter 3. Principles of Operation Basic CPU Operations Micro-Instruction Operations . Micro-Instruction Flow and Timing Charts General Flow-Chart Timing Chart Examples of Micro-Instruction Operations Load Byte Immediate - LBI ADD Packed Byte - AP, XX - Type Circuit Controlled Manual Operations (MANOPS) Cycle Steal Operations . Micro-Program Operations . 3333333- Chapter 4. Features 4- 1 Chapter S. Power Supplies and Control Power Supply and Power Distribution Power On/Off Sequences Emergency Power Off Power Failures line Failures. Circuit Overload. Undervoltage Overtemperature S14 Power Switch S12 Power Control . SS555555555- Chapter 6. Console and Maintenance Features Customer Console Keys Power On Key Power Off Key Start Key. Stop Key. System Reset Key Load Key I/O Check Reset Key Switches. Mode Switch. Process Address Stop (ADR STOP) Instruction Step (INSN STEP) Storage Display (STOR DPL Y) Storage Alter (STOR ALTER) 6- 1 6- 1 6- 1 6- 1 6- 1 6- 1 6- 2 6- 2 6- 3 6- 4 6-4 6-4 6-4 6- 4 6- 4 6- 4 6- 5 2-109 2-109 2-110 1 1 1 2 2 2 2 3- 9 3- 9 3- 9 1 1 2 2 2 2 3 3 3 3 4 Display Register (DPL Y REG) Alter Register (ALTER REG) . Storage Scan (STOR SCAN) Storage Fill (STOR FILL) . Control Program Load (CPL) Register Data or Address Switches Data Switches Time Sharing Switch Lamp Test Switch Emergency Power-Off Switch (EPO) Meter Lock - Switch Indicators P, I, U, L Display E, S, T, R Display Attention Indicators Process line Failure Power. Thermal Printer SIOC • Card I/O 1 Card I/O 2 Card I/O 3 2152 • STCTRL • IDC CE Console Switches. CE Mode Switch Single Cycle Switch . Single Micro-Instruction Switch Compare Equal Stop Switch Storage Test Switch. Initial Load Loop Switch Invert Parity Switch Process Check Override Switch CPU Check Reset Key . CPU Reset Key Lamps Switch Block Feed Check Switch 1403 and BSCA CE Switches Display/Compare Select Switch I/O Display CE Select Switches • Indicators CE Mode Indicator (Red) CPU Check Indicators (Red) MOD SU ALU BUS SAR INH Delta Cycle Indicators Cycle Indicators. Any I/O Busy Indicator Any Feed Cell Dark Indicator . LS Zone Indicators . CE Display Bits PO to 15 - Indicators Miscellaneous CE Console Components CPU Remote Control Socket Missing Phase Button Maintenance Features CPUChecks . CPU login CE Volt Meter 6- 5 6- 6 6- 6 6- 6 6- 7 6- 7 6- 8 6- 8 6- 8 6- 8 6- 8 6- 8 6- 8 6- 8 6- 9 6- 9 6- 9 6-9 6- 9 6- 9 6- 9 6-10 6-10 6-10 6-10 6-10 6-10 6-11 6-11 6-11 6-11 6-11 6-11 6-11 6-12 6-12 6-12 6-12 6-12 6-13 6-13 6-13 6-13 6-13 6-14 6-14 6-14 6-14 6-14 6-14 6-15 6-15 6-15 6-15 6-15 6-15 6-15 6-15 6-15 6-16 6-16 6-16 6-16 6-17 6-17 6-17 6-18 v Illustrations 1- 1 1- 5 1- 6 1- 7 1- 8 1- 9 1-10 1-11 1-12 1-13 1-14 1-15 1-16 1-17 1-18 1-19 1-20 1-21 1-22 1-23 1-24 1-25 1-26 System/360 Model 20 Layout (Maximum System Configuration) Machine Instructions Byte Layout . Extended Binary-Coded-Decimal Interchange Code (EBCDIC) . Hexadecimal Values Binary Numbers Zoned FOlI'1at Packed Format Logical Data Sign Standardization RR Format RR-Type Instructions RX Instruction RX-Type Instructions SI Instruction Test I/O and Branch Instruction Control I/O Instruction SI-Type Instructions SS Format Transfer Instruction SS-Type Instructions Indexing. CPU Principles Address Checking Program Level Control Internal Data Formats 1- 9 1-10 1-10 1-10 1-11 1-11 1-11 1-12 1-13 1-13 1-13 1-13 1-14 1-14 1-14 1-15 1-15 1-15 1-16 1-20 1-25 1-30 1-32 2- 1 2- 2 2- 3 CPU Basic Timing Short Time Clock Switching CPU Start Sequences 2- 2 2- 3 2- 6 1- 2 1- 3 1- 4 vi 1- 1 1- 2 1- 8 2- 4 2- 5 2- 6 2- 7 2- 8 2- 9 2-10 2-11 2-12 2-13 2-24 2-25 2-26 2-27 2-28 Continuously Alter or Display Start-Stop Control ICPL Start and Restart Sequence ICPL Start-Stop Timing CPU Stop Conditions CPU Reset Hysteresis Curve of Magnetic Core Core Store Write and Read (4 us Storage) Two-Microsecond Core Storage Oock Core Storage Module Selection X and Y Address Lines for Location 0000, 8-K Array . Inhibit/Sense Lines for Bit 0, 8-K Array . X and Y Address Lines for Local 0000, 4-K Array Inhibit/Sense Lines for Bit 0 and 2, 4-K Array Four-Microsecond Core Storage Oock Time Delay Circuit, Four Microsecond Storage Oock. ALU Cell Carry Conditions • . . . Output Bus Lines Assignment of the Highorder Device Address Qigit Device Address/201 Functions during ICPL Control Principles of Data Bus Parity Changing during I/O Sense. CPU Input Bus Lines CS Interface . CS Data Address and Field Length Registers CS Select. Update CS Data Address and Field Length 2-94 2-97 2-101 2-103 2-105 2-108 6- 1 6- 2 Display Switching during CPU Log in First CPU Log in Halfword (Log Cycle 0) 6-18 6-19 2-14 2-15 2-16 2-17 2-18 2-19 2-20 2-21 2-22 2-23 ......... ...... 2- 8 2-10 2-11 2-13 2-17 2-18 2-19 2-22 2-23 2-25 2-26 2-27 2-29 2-34 2-36 2-85 2-89 2-91 2-93 ABBREVIATIONS AC ALe ALU Mltn BSCA \.s; Address Check Automatic Length Count Arithmetic Logic Unit American Standard Code for Information Interchange Binary Synchronous Communications Adapter CC CIO CPL cpm CPU CS CY Condition Code Control Input/Output Control Program Load cards per minute Central Processing Unit Cycle Steal Cycle DA DR Device Address Data Register EBCDIC E-phase Extended Binary-Coded-Decimal Interchange Code Execution-phase FDR FL FS From-Data Hegister Flip Latch Function Specification Hz Hertz IAR ICPL INH Instruction Address Register Initial Control Program Load Inhibit INT I/O IOC I-phase Internal, Integrator Input/Output Input/Output Channel Instruction Phase LC LS LSA Length Count (latches) Local Store Local Store Addressing Check, Line Sense Amplifier MAR MANOP MFCM Modify Address-Register (Circuit Controlled) Manual Operation Multi-Function Card Machine NSI Next Sequential Instruction OCU Op code OP REG Operation Control Unit Operation code Operation Register PL PSW Program Level Program Status Word SA SAR SDn SIOC SU Sense Amplifier Storage Address Register Storage Data Register Serial Input/Output Channel Shift Unit TDR TIOB To-Data Register Test Input/Output and Branch XIO Transfer Input/Output vii lRM CONFIDENTIAL CHAPTER 1 INTRODUC TION which accommodates I/O units, such as the IBM SYSTEM /360 MODEL 20 IBM 1419 Magnetic Ink Character Reader or the IBM 1259 Magnetic Ink Character Reader, that use 1400 serial languages. The IBM System /360 Model 20 Data Pro- The system may also be equipped with an cessing System (Figure 1_1) consists of the I/O channel which serves I/O devices such IBM 2020 Processing Unit, the IBM 1403 asthe IBM 2415 Magnetic Tape Unit and Printer or IBM 2203 Printer, the IBM Control, or with a storage control feature 1442 Card Punch Model 5, the IBM 2501 to control the IBM 2311 Disk Storage Drive. Card Reader and either the IBM 2560 Multi- A Binary Synchronous Communications Function Card Machine (MFCM) or the IBM Adapter (BSCA) allows transmitting and 2520 Card Read Punch. The system can be receiving of data from another source via equipped with a Serial I/O Channel (SIOC) telephone lines. 2501 Model Al/A2 1442-5 TAU for 2415 I/O Channel ssC.A 2020 Processor Custom..... .5tor.,9'=; ~ K, 8 K, U co,,+>-ol K,.L'K,2~",32K b>jte$ Storo.~; SIOC "";,,,,41<; - """".....1.6 K b~les ~.t~ Im~ 1------~~~-EXCIUSiV. ~~ :------""7 OR _ _ 2..1. 52.. Figure 1-1. System/360 Model 20 Layout (Maximum System Configuration) 2020 FETOM (5/68) 1-1 IBM CONFIDENTIAL The system configuration depends on the available customer area of the main stor- wishes of the customer, with four excep- age. tions: 1. 2. Either the 2560 Multi-Function Card The Model 20 can perform 36 different Machine or the 2520 Card Read Punch machine operations (instructions). Everyone or Card Punch can be used, but not of the 36 machine instructions (Fig. 1-2) both. may be used to build the machine (customer's) Either but not both of the two printers program. (IBM 1403 and IBM 2203) can be used. 3. Only one of the 2520 machines can The machine instructions have different be used on the system. formats; that is, they are either two, four or six bytes long. 4. Either but not both of the two magnetic ink character readers (IBM 1419 or IBM 1259) can be used on the system. The first byte contains the operation code (op code) which specifies the operation that is to be performed (add, subtract, compare, and so on). The fol- lowing bytes contain the addresses of one or two operands or data itself (immediate The CPU housing contains the logic circuits of the CPU, as well as the logic circuits of the I/O attachments, channels and control features. The CPU has three data). The instructions which use operands that are greater than two bytes also contain a field length code that specifies the size of the operand. console panels: one for the opera tor, another (which is normally covered) for the NAME MNEMONIC FORMAT customer engineer and a third for operating the BSCA. Data and machine instructions (customer) are entered into the system by means of a card reader (2501, 2560 or 2520), and placed into the customer s area of the main storage (core storage) as logical data. The basic format of the logical data is a byte. One byte consists of a parity bit and eight data bits. The addressing system allows selection of any byte or group of bytes within the 1-2 (5/68) BRANCH ON CONDITION BRANCH AND STORE ADD SUBTRACT STORE HALFWORD BRANCH ON CONDITION LOAD HALFWORD COMPARE HALFWORD ADD HALFWORD SUBTRACT HAL'FWORD BRANCH AND STORE SET PSW TEST UNDER MASK MOVE AND COM:J>ARE OR HALT AND PROCEED TEST lIO AND BRANCH CONTROL lIo TRANSFER lIO MOVE NUMERICAL MOVE CHARACTERS MOVE ZONE COMPARE TRANSLATE EDIT MOVE WITH OFFSET PACK UNPACK ZERO AND ADD COMPARE DECIMAL ADD DECIMAL SUBTRACT DECIMAL MULTIPLY DECIMAL DMDE DECIMAL fj'.\~re J.-~ BCR BASR AR SR STH BC LH CH AH SH BAS SPSW TM MVI NI CLI or HPR TIOB CIO XIO MVN MVC MVZ CLC TR ED MVO PACK UNPK ZAP CP AP SP MP DP OP CODE RR RR RR RR RX RX RX RX RX RX RX SI SI SI SI SI SI SI SI SI 07 OD 1A 1B 40 47 48 49 ss ss sa ss ss ss sa ss ss ss ss ss ss ss ss ss DO Dl 1>2 4A 4B 4D 81 91 92 94 95 96 99 9A 9B Il3 115 DC DE F1 F2 F3 F8 F9 FA FB FC FD . H~""ke Ilo1st\'"i.'CfiolA.$ IBM CONFIDENTIAL Instructions are normally stored in con- In the Model 20, the machine program is secutive main storage locations and are automatically interrupted when all required executed sequentially. data of an I/O operation are transferred. However, the se- quence of operations may be altered at any This interrupt causes a branch in the machine point in the program by conditional branch program. instructions. by the programmer and may start a program Conditional branch instruc- The branch address is defined tions make logical decisions by performing routine which performs operations necess- tests on indicators set by the machine as ary when a data transmission to or from an a result of other operations (such as a I/O device is terminated. comparison of two operands or a forms interrupt can be disabled under program skip after print). control. The Model 20 uses the System /360 machine The execution of the 36 machine instruction language that is able to process data of is the task of the Control Program (micro- fixed length (fixed-point data) as well as program). The control program is a CPU a string of data the number of which is internal sub-program, to which the cust- defined by a field length (variable -length omer has no access. data). is stored in the control area of the main storage. However, this The control program The capacity of the control area The CPU controls the functions of all I/O depends upon the Storage capacity rented devices attached to it. by the customer. However, I/O operations are initiated, halted, or tested by program instructions which select the The control program consists of micro- desired unit and determine the operation instructions which are combined to exe- it must perform (read, punch, and so on). cute the functions indicated by a machine instruction. The micro-instructions direct- The CPU is available for processing during ly control the circuits in the CPU and in each I/O operation, even though several the attachments. 44 different micro-in- I/O devices may be functioning simultan- structions are available. eously. This overlap of I/O operations and CPU processing is called time sharing or read/write compute overlap. These modes are accomplished by allowing the INPUT/OUTPUT DEVICES CPU to cmtinue with the machine program after data transmission to or from the spe- 2501 Card Reader, Models AI, A2 cified I/O unit, while this unit is still completing the mechanical aspects of reading, The 2501 Card Reader provides punched- punching, printing and so on. card input to the Model 20. Cards are read 2020 FETOM (5/68) 1-3 at a :maxi:mu:m rate of 600 cp:m in the Model Al and up to I, 000 cp:m in the Model A2. 2520 Card Read Punch The 2520 Card Read Punch provides punched- card input/output for the Model 20. Card reading is acco:mplished by solar cells and the validity of the data is veriCards are read, read and punched, or fied as each colu:mn is read. Each card punched at the rate of 300 or 500 cards is also checked for off-register punching per :minute (cp:m) according to the :model. and for incorrect positioning in the read station. Model The 2501 functions under control of the Model 20 progra:m. Al Speed 500 cp:m Operation Read only, punch only, or read and punch si:m- Lights and switches provide the operator with infor:mation on ultaneously, as directed operating conditions and with control of by the Model 20 progra:m. start, stop and card run-out. 2560 Multi-Function Card Machine A2 500 cp:m Punch A3 300 cp:m Punch Card feeding is in parallel fro:m the hopper, serially through the read station and in The 2560 Multi _Function Card Machine parallel through the punch station. affords the Model 20 full card-file :main- are ejected into radial stackers. tenance abilities plus two, four or six linccs Model 20 progra:m can ·select which of the of card printing. two stackers receives each card. The 2560 consists of Cards The If no two hoppers, a solar-cell read station, s election is made, the card goes into a co:m:mon punching station, an optional stacker 1. printing station and five selective stackers. The 2520 has lights and switches to pro- Cards fro:m both the pri:mary and secondary vide the operator wi th infor:mation on oper- hoppers can be read, punched and selected ating conditions, and control of start, stop into anyone of the five stackers, regard- and card run-out. less of the hopper of origin. trol of the Model 20 progra:m during all The unit re- The 2520 is under con- cord functions of reproducing, gang-pun- phases of reading, punching. stacker se- ching, su:m:mary punching, collating, de- lection, and data checking. collating and sorting can be perfor:med on the MFCM under control of the Model 20 progra:m. 1442 Card Punch, Model 5 With the optional docu:ment printing feature, the MFCM functions in- The 1442 Card Punch Model 5 provides clude those of an interpreter and a pun- punched-card output for the Model 20. ching, co:mparing, card docu:ment printer. The 1442, Model 5 has a card hopper. a 1-4 (5/68) serial punch station and a radial stacker. The dual-feed carriage special feature Card punching is done serially at a max- permits independent and simultaneous imum rate of 160 columns per second. control of two sets of forms. Punching accuracy in the 1442, Model 5 is verified by comparing a signal, generated as each hole is punched, with data in the CPU core storage. Control 1403 Printer, Models 2, 7, N1 of the 1442 is by the CPU stored progThe 1403 Printer provides output for the ram. Model 20 at a rate of 600 lines per minute. The Model 2 has a capacity of 132 printing positions and the Model 7 can print 120 2203 Printer, Model Al positions. The Model N1 prints 1,100 lines per minute on 132 positions. The 2203 Printer provides output for the Single, double and triple spacing of lines, Model 20 at up to 750 lines per minute. plus skipping to a predetermined point, Interchangeable type bars allow the oper- are performed by the tape-controlled car- ator to select a type style and character riage, under control of the CPU stored set for a specific printing job. program. The printing speed for anyone application carriage that permits high-speed skipping. depends on the total number of lines printed, the amount of processing required for each printed line and the character set The Model 2 has a dual- speed Each printing position can print 48 different characters and the printing format is. controlled by the stored program of the system. used. As each character is printed, checking circuits are set up to ensure that the characSingle, double and triple spacing of lines, ter printed is correct. plus skipping to a predetermined point, are made to ensure that only valid characters performed by the tape-controlled carriage, are printed and that overprinting does not directed by the CPU. occur. The sequence and Checks are also If an error is detected, the m.achine arrangement of data printed are also con- stops and the associated check light comes trolled by the stored program; a line to be on. printed is assembled in core storage ln exactly the same sequence in which it is to appear as output. To ensure accuracy 2152 Printer - Keyboard of output, each character is checked with the corresponding position in core storage The 2152 Printer-Keyboard consists of a before being printed. table mounted typewriter that is cab1e2020 FETOM (5/68) 1-5 IBM CONF!DENTIAL connected to its attachment in the CPU. Six models of the 2415 Magnetic Tape Unit The 2152 is used mainly as an inquiry are available. station which allows the operator to re_ unit is a cabinet containing two tape drives, trieve information (e. g., from a disk the tape control unit and the power supply. file), and to print this informations. The additional tape drives required for the Inquiries via the Printer-Keyboard are bigger models are housed in cabinets bolted especially advantageous when jabs are to the basic unit. being run sequentially and there is a need All models are equipped with two-gap read/ to know the current working status. write heads which permit immediate read- The Printer-Keyboard can also be used to back after writing, for error_detection pur- change information or data in a just poses. running program. mm) per second in each case, and all mo- In all models, the basic The tape speed is 18.75 " (476,25 dels can read backwards. Beside the above mentioned functions, the 2152 may be used as a secondary, low The 2415 is attached to the CPU via the speed printer, so that two separate reports Input/Output Channel may be produced by the same program. gulates the flow of data' to and from the system. (roc). The IOC re- Input and output are controlled The 2152 has a 125-character print line. by the stored program, which initiates The machine prints at 15.5 characters operations by pas sing instructions to the per second, producing one original print channel. and a maximum of four copies. by the tape control in the 2415 operating Printable are 88 characters of the standard System These commands are accepted the tape drives. /360 layout. Vertical spacing of three or six lines per inch can be manually selected by the operator. Selectable spacing of four or eight lines is optional. 2311 Disk Storage Drive The models 11 or 12 can be attached to the system. A significant increase in data storage capacity for the System/360 Mod 20 is provided by the IBM 2311 Disk Storage 2415 Magnetic Tape Units Drive. The amount of information that can be stored is virtually unlimited since The 2415 Magnetic Tape Unit is used as mass storage. The machine functions as an input and output device entering data the disk pack holding the data is easily removed and stored on a shelf. Thus, an entire library can be kept off-line. into the system, and recording data gen- The 2311 is connected to the CPU via the erated by the system. Storage Control feature. 1-6 (5/68) IBM CONFtr The Storage Control feature accommodates .AL 1419 Magnetic Character Reader two 2311' s of the same model (models 11 and 12 cannot be intermixed on the same The 1419 Magnetic Character Reader can system). Since both models use the same be attached to a Model 20 through the disk pack, the data format is the same, serial input/output channel device. The that is, a fixed length of 270 bytes. 1419 reads into the system the magnetically inscribed information on checks and other banking documents, at speeds as high as 1,600 documents per minute. Do- Binary Synchronous Communications Adap- cuments can be sorted into as many as ter 13 clas sifications as they are read. (BSCA) The BSCA is a fully program-controlled communications adapter offering teleprocessing at accelerated speeds to the The SIOC and, in turn, the 1419 operate under the control of the Model 20 program. System /360 Model 20. The BSCA can communicate in point-to-point or in multipoint fashion. 1259 Magnetic Character Reader In the first case, data exchange is between only two stations at a time; in the second case, a master station consisting of a larger model of the System /360 can select or poll one of several Model 20 slave stations interconnected on a leased or private line. The 1259 is a medium-speed machine capable of reading and sorting magneticink-inscribed banking documents of inter_ mixed sizes and paper weights at speeds up to 600 documents per minute. The machine is connected to the Serial I/O Channel (SIOC) to operate under control of the machine program in the CPU, or The BSCA can tran.smit and receive all characters of the EBCDI or ASCII Code, whichever code is specified, since these are used directly as line codes. it can operate off-line as a sorter under the control of its own circuitry and the operator's panel on the 1259. Eleven control characters provide for specific data link functions, which the program can PROGRAMMING use to control the data exchange in many ways. Thus, more operational flexibility Data Formats is introduced, since almost all controlling The basic data format is the byte (Fig. power is given to the program. 1-3). The byte consists of eight data bits 2020 FETOM (5/68) 1-7 .... I 00 VI "0\ 00 Gi I:- PCJSd-,OVi Nu.vd?elr' ""j 81111QV':j Vo..lues - -- I CD Total 255 qg Tol-c~l S;v\CW-j VCl/ucS(f-IQ~ b:tte) Total L5 . IV! hekaaec(lMal"'/F/ Total ¢ . 1M lt1e'L<-.:...1--,-C..B2--'_:.JD/, 2 11 12 15 16 1920 31 32 3536 47 I ~:S~~:~~ioJ Op Code I o ~ 6 Bytes 78 Bl 0]/1 15161920 D/O B2 31323536 47 Figure 1 - . SS Fonnat eight bits in size. This length code refers to operand 1 only. The length code may specify operand 1 sizes from 0 to 255 bytes to the left of the units byte, equaling operand sizes from 1 to 256 bytes. l,q. the leftmo st byte of operand 2 (Figure 1-19). Among the 55 instructions is the third I/O instruction. The length of operan d 1 is specified by the Ll field in the instruction. The length of operand 2 is given in the L2 field. The Ll/ This instruction has a some- what different internal structure as shown in Figure 1-20. The Transfer I/O (XIO) instruction causes a data transfer from an L2 fields have four bits each and the maxi- I/O device to the lTIain storage, or vice mum number that can be represented is versa. 15. T~ number in these fields is actually a field length code because it specifies the number of bytes that extend to the left of the units byte of an operand. Thus, the true length of every operand is always one byte longer than indicated by the field length The DA field specifies the particular I/O device (printer, card reader, and so on) and the F5 field specifies the particular function in the addressed device (for example, punch secondary). The Bl/Dl field is the address of the leftmost byte of the input or output field in the main storage. may be altered via indexing. code. This address The B2/D2 field, which may also be indexed, is true field length. Although this field length contains 16 bits, the field length is limited to 4,095 This field length specification is used to bytes for other reasons. Also, the field obtain a carry frolTI a length counter when the units byte is reached. Also, it is possible op Code to obtain the units byte address by simply adding the length code to the address of the leftmost byte of an operand. The 55 format instructions that handle logical data have only one length of code field, 14 10 - - - - - - 6 Bytes ---------1 IOp Code I DA I FS I Bl I o 78 Figure 1 - . . ttl· B2 ....l-!::.I D( D) L.:/l---1-=. 11 12 15 16 1920 Transfer Instruction 31323536 D Mnemonic Type of Doto Condi ti on Code Processed Influenced? F1 Move with Offset MVO Any no F2 Pack PACK Any no F3 Unpack UNPK Any no F8 Zero and Add ZAP Decimal yes F9 Compare Decimal CP Decimal yes FA Add Decimal AP Decimal yes FB Subtract Decimal SP Decimal yes FC Multiply Decimal MP Decimal no FD Divide Decimal DP Decimal no D1 Move Numerics MVN Any no 02 Move Characters MVC Any no D3 Move Zones MVZ Any no 05 Compare Logical CLC Any no DE Edit ED Dec/Logic yes Translate TR Any no XIO Any no DC 47 Name in Hex DO Figure 1-. Transfer I/O U. SS- Type Instructions 2020 FETOM (5/68) 1-15 ISM CONF!DE~mAL length must not be zero or else an error D-part. will occur. one solid field, that is, the total binary Figure 1_21 shows the 55-type instructions. value of the 14 low-order B/D bits repre- Normally, both parts are used as sents the operand address. direct addressing. This is called It is possible to generate another address, however, from the same Indexing BID field without changing anything in the instruction. • Indexing is a method of address generation. The Bfield is not only part of the direct address, but may also become the address • The B field and the D field of an in- of a general register. struction are used to generate a new registers in the protected area have binary address. addresses from 8 to 15. The eight general As the B field consists of four bits, it can address such a • The B field addresses one of the eight general register as soon as it contains eight general registers in the protected area or more. to read out the bas e addr e s s. content of a general register (the base address) Thus, the B field reads out the and this content is then added to the D field • The base address is added to the D (the displacement) of the instruction. The field (displacement) and the result is result of this add operation represents the the new address. new address. This is called effective ad- dressing or indexing. Indexing is performed by the micro-program All instructions that process data located which automatically checks the 8 bit in the in main storage have an address field for each operand, to be able to fetch the operand data from main storage (Figure 1-22). The address field is divided into a B-part and a B field to find out whether indexing is required. If an 8 bit is found, the indexing routine is performed. Indexing is ineffective when the addressed general register contains zero. It is also ineffective when the D field is zero. DATA TRANSFER PRINCIPLES CPU - I/O DEVICES • Input data is read into CPU via I/O devices. mM CONFIDENTIAL • Input data is being processed in the Time Sharing Mode CPU and the resultant data is subsequently transferred to an I/O device that produces • the output. Time sharing mode is active when the Time Sharing switch on the customer console is in position on. • Data transfer between CPU and r/o devices (or vice versa) is a very substantial part of all processing • customer instruction as soon as the operations. • Time Sharing allows the issue of a new previous one has been accepted. Data transfer can be performed in either • The continued customer program is r/o burst mode, time sharing mode, or interrupted by overlap mode. indicate that a data unit has to be requests which transferred. • • During burst mode operations, the total • The devices can operate at the r/o requests of the running devices are satisfied depending upon instruction (field length) is transferred a fixed priority scheme if more than in one single continuous flow. one request is active at the same time. The flow stops when all specified data • Operating in time sharing mode, the CPU uses the time between subsequential r/o requests (e. g. , between two card columns to be read) to perform During burst mode operations, the any other operations including data customer program is completely intransfer from or to active (no new instruction is sued). • r/o amount of data specified in the I/O units have been transferred. • r/o same time. Burst Mode • Several The termirlation of burst mode operations is indicated by condition code settings (Tape, Disk, etc.) or by requests r/o devices. Overlap Mode • Overlap Mode can be considered as time sharing for r/o devices with a for interrupt (card I/O devices not high data transmission rate (Disk, operating in time sharing .rpode). Tape, BSCA). 2020 FETOM (5/68) 1-17 IBM CONFIDENT!AL • The request of these high speed I/O devices are of highest priority. • Contrary to tim.e sharing operations, which require a control program routine (service phase) to transfer a data unit, the overlap mode data transfer is performed within one process (CPU) cycle only. • Overlap operations can transfer two data units (bytes) at a time. 1-18 (5/68) IBM CONFIDENTIAL IBM 2020 CENTRAL PROCESSING UNIT ( CPU) sists of micro-instructions arranged in logical sequence necessary to execute the operation called for by the machine language instruction. • The CPU is main control unit of the whole system. The micro-program is also stored in main storage, but in an area not accessible to the • The CPU processes data and controls customer. This restricted area is called input/output (I/O) operations. control area and is physically a part of the core storage array which also contains the • For I/O operations the CPU activates customer's area. the control units (attachments, channels, The control storage area is specified by control features) addresses higher than the highest possible of the I/O devices. customer's address (depends upon the custorner's storage size) OPERATING PRINCIPLES Micro-Instruction Operating Principles • • Machine language instructions are instruction Op code. executed by micro-program. • The micro-program consists of micro- • The principles are shown in figure 1-23. • mode. machine language instructions are linked machine program is loaded and stored in Only one processing period is executed when operating in CE Single Cycle In order to solve a customer's problem, to build a program (Figure 1-23). This Micro-operations require one to four processing periods. instructions linked in a logical sequence • Micro-operations are defined by the • A processing period exists of delta cycle and cycle. main storage. Machine language instructions are performed in series. • The timing pulses 'delta cycle and cycle' are provided by the Long Time Clock. Machine language instructions are investigated (instruction phase, I-phase) and their • During a proces sing period 13 steps specified operations are executed (execute are performed, which are defined phase, E-phase) by a sub-program, called by the T-pulses of the Short Time Micro-Program. Clock. This micro-program con- 2020 FETOM (5/68) 1-19 .... I N 0 0; ....... 0'1 ~ r'J D) I MACHINE 'PROGRAM ~~~~-----J~ AR MV I I 5to..t I r- i I Phase: ~ r---- / nJMACl-lINELANGlIA6E INSfR. Stop E- I I I ___ J -------- I XIO $T H ---L.-.-_ Ph"sc I I L _____ , MICf?Q- PR06IW·1 \ Ila! I Ihl~J1_1T~SI_~I~~!JA ~Of\_~':!_l.~!~~[!3_J I , I I'-_____P_l'o_ce.s:s C'dcle [; MAIN STORAGE _______ , PRocE"SSJ.NG PERIOb (;"'cI....d.;.,3 Au)(j liQY!,( Stora~~ ) -i SHoRT TIHEC/.OCI< (l3C\s;cnm;"1l) LON6 TIME CLOCk (c'.1c1e (ollltroL) »r IBM • (,~NFIDENTIAL The Short Time Clock generates the start of delta cycle, while the delta cycle pulses TI information is accepted by the cycle latches to T8 continuously after power on. at start of process cycle. Micro-Instructions are always one halfword (two bytes) in length. Their functions are specified by an operation code (Op code) in the highorder part of the instruction. The two delta cycle and cycle latches switch binary and provide delta cycles and cycles o to 3 (processing periods 0 to 3). The loworder part provides immediate data Each of the four processing periods is and/or register addresses. assigned to a fixed purpose which depends upon the one possible main storage access: For execution, the micro-instructions are Processing period 0: Read out micro- read out from the ITlain storage and set into the operation register (OP REG). instruction. Reading of micro-instructions and placing them Processin~ Eeriod 1· Read out second (From) operand. into OP REG is controlled by circuits functioning during instruction start only. Processin~ :eeriod 2: operand. The bit pattern of the micro-instruction in OP REG activates decode circuits which generate control signals. Read out first (To) Processing :eeriod 3· Store result. These signals directly control the CPU circuits to per- For example, a micro-instruction with both form the specified micro - operation (Op operands code) . processing periods in sequence when the in main storage,requires all four operation result has to be stored. However, One micro-operation requires up to four processing periods. During every pro- cessing period only one main storage access is possible. Thus, the number of processing a micro-instruction with both operands in CPU registers, outside main storage only, requires processing period 0 (read out micro-instruction, one storage access). periods during a micro-operation depends upon the number of required storage accesses. Micro-instructions with either the from or A processing period is defined by a delta to operand in main storage require besides cycle and process cycle. processing period 0 , either processing Delta cycle and process cycle are timing pulses provided period 1 or processing periods 2 and 3. by a latch ring. To execute only the required processing This latch ring is advanced by specified basic timing pulses generated periods. the Long Time Clock can be ad- in the Short Time Clock. vanced out of sequence by control signals. The· latch ring, defined as Long Time Clock, consists of These control signals are generated in a two delta cycle latches and two cycle latches. circuit, called Cycle Control. The delta cycle latches are advanced at each eration depends on the micro-instruction Their gen- 2020 FETOM (5/68) 1-21 IBM CONFIDENTIAL Op code and information where the operands • -are located (main storage or CPU register). CPU basic operations directly control CPU circuits. A processing period is divided in 13 steps. These steps are defined by timing pulses • The available logical CPU circuits (T-pulses) of the CPU basic timing. The determine the number of basic T-pulses are generated by a latch ring called operations which can be performed. Short Time Clock. Pulses A and B, gener- ated by a crystal oscillator, advance the Micro - Operations Short Time Clock. T-pulses are numbered from 1 to S. Eight T-pulses define the process cycle period (T1 to TS). The required 13 steps of a processing period are achieved by overlapping processing periods in which the delta cycle consists of T4 through TS plus T1 through T3. Micro-operations are specified by microinstructions. The micro-instruction bit pattern in OP REG directly controls the Logical CPU circuits by generating main control signals. These main control signals are timed by delta cycles and cycles, and by pulses T1 to TS. The 43 available micro-instructions are A micro-operation is performed in functional given in FEMDM, 2020 CPU, figure 5-0. steps such as moving data from one register into another. The functional steps to be executed are requested either unconditionally Micro-operations process data available in main storage or in a work storage device called Local Store (LS). by circuits or by the micro-instruction Op code and are timed by processing periods (delta cycles and cycles) and T-pulses. Example: The micro-instruction address Local Store has to be moved into the main storage address register (SAR) during processing period 0 (delta C YO) at T 5. Thi s functional step is requested by circuits. The LS contains 64 halfword registers. For addressing a single LS register, the LS is divided into eight zones (0 to 7). Each zone contains eight registers (0 to 7). Functional steps can be performed simultaneously, if they use separate CPU circuits. Each zone is assigned to one of eight possible program levels (PL's). PL's to 7 are caused by I/O requests. PL 7 indicates the highest priority I/O request. CPU BASIC OPERATIONS PL 0 is the CPU operating level which is active when no I/O request has to be served. • 1-22 Basic operations are: Micro-operations, The registers 0 to 6 in a zone are general circuit controlled manual operations purpose registers. (MANOP's), and cycle steal operations. the To- or From-Reg fields in the micro- (5/68) They are addressed by instructions. 3. Register 7 of each zone is used as Instruction Register to Register instruction format (FF format). Address Register (IAR). During microoperations the IAR contents are incremented The RI format allows data transfer and by 2 to obtain the address of the next se- logical operations between a register and quential micro-instruction (NSI). an immediate data byte in the instruction. For branching the IAR contents are changed. The data transfer or operation takes place Not that changing the PL by a I/O request between the specified To-REG and the im_ (addressing another zone) causes a branch mediate data byte. to the address in IAR of the new zone. in the To-REG. The The result is stored IAR (LS register 7) is only addressable in store-type micro-instructions. Load-type The RD format provides a displacement instructions, addressing the IAR, are address one byte in length. treated as No Operations to prevent erroneous- ment address is used as the loworder byte ly changing of the instruction sequence. of a halfword address. For FF or I/O format instructions the con- of this address is the highorder byte of the tents of the register specified in the To- IAR (block address). or From-Reg fields are used as data if The To-Reg field specifies the LS register, the highorder bit of the field is off (direct the content of which is tested to decide addressing) or as main storage operand whether branching is perfonned or not. This displace- The highorder byte addresses if the bit is on (indirect addressing). Instruction bit 15 on (indirect addressing) For FF and I/O format instructions the operand address is automatically updated indicates that the combined address is used to read out the final branch address. (incremented or decremented) according to the processed data format (byte or half- Exceptions: word). LH. With this instruction the specified LS register is loaded with the contents of the addressed halfword. Micro-Instruction Formats The three basic instruction formats are: STH. With this instruction the contents of 1. Immediate instruction fonnat (RI fonnat) addressed halfword. ~ I/O instructions are a special case of the RI fonnat. the specified LS register is stored in the (See "I/o Micro- For both instruction indirect addressing is performed if bit 15 is on. Instruction Fonnats". ) The FF format allows data transfer and 2. Instruction format with displacement logical or arithmetic operations between addressing (RD format) two registers or data fields in core ad- 2020 FETOM (5/68) 1-23 IBM CONFIDENT!,'\L dressed by the contents of these registers. PL's, the check is not effective, but the There exist four different types: addresses can be checked by means of a 1. Both registers are used as data BAC-instruction. registers in PL's 1 to 7, the instruction is executed (DD type) For address checks with the deviations indicated in Figure 1-24. 2. One register is used as data register For odd halfword addresses, the next lower and the other is used as address re-. even address is used. gister specifying a I FROM ADDRESS' . Automatic length count (ALC) is available (DX type) for several FF format instructions of the 3. One register is used as data register xx-type. This feature allows a string of and the other is used as address halfwords/bytes to be processed by one register specifying a 'FROM ADDRESS'. instruction. The automatic length count is (DX type) activated when LS Register 3 is used as To-operand, and LS Register 5 as From- 4. Both registers are used as address operand. registers specifying a 'FROM AD- length - codes (L1/L2), the LS registers DRESS' and a are used. I TO ADDRESS' (XX For operations which need two Operations with one length count (L) use the contents of LS Register 1. The type). content of a length count register indicates The operand address of the most FF format the number of bytes to be processed minus instruction are checked when the AC bit one (or two for halfword operations). is on. The ALC operation ends when the field lengths are decreased below zero (registers contain /FFFF / for byte operations Address checking involves: 1. Checking of halfword boundaries (error: odd address, effective only or /FFFE/ for halfword operations. ~ Besides the FF format instructions, ALC is also available for I/O instructions for halfword operations). when the To-Reg field address LS register 2. Checking of available customer's 7 and indirect addreSSing is specified. storage (error: exceeds highest The setting of condition cod e for the binary possible customer's address). and logical instructions is programmable (bit 6 of the instruction). 3. Checking for protected area (error: address within the first 144 bytes) The decimal in_ structions will always set a condition code. For the binary instructions AR, SR, ARSC An address check causes PL 2 by request and SRSC and for the logical instructions, if the CPU is working in PL O. AND, OR, EOR and CLC when used in 1-24 (5/68) In higher IBM CONFIDENTIAL I Program Level Customer Storage Address Store Checking I Fetch Operation specified Operation 0 yes yes no 0" 0, "0"' X: R: 0: N: T: I I I~ jX I X XT X X RT R X X X I Control Storage Not existent St. Fetch Storl!! i Fetch Store Operation Operation! Operation, Oper. ! , NT N N CT 0 0 Data are fetched/stored Storagedata are regenerated, i. e. storage data are not destroyed. Zeros are used instead of storage data. Data are not stqred but lost. p,- $""'t'~ck:lII~ ;s pev-ft>II"c.-.eci • XX format with auto length count and setting The overflow latch of the condition code lat- of condition code specified (bit 6 of the in- ches can also be forced on if: struction), these instructions should be preceeded by a CTRL-instruction, which sets the condition code to zero (1000). 1. With an AP instruction in XX format the carry latch is on at the end of The decimal instructions, AP, SP, ZAP the operation. and PPC should always be preceeded by a CTRL instruction. 2, By all decimal instruction, AP, SP, For AP and ZAP this CTRL instruction sets ZAP, PPC in XX format with auto- the condition code to zero (1000) and the length count when LI carry latch off. ceeding positions of the second operand L2 and the ex- are not zero, For SP and PPC this CTRL instruction sets the condition code to zero (1000) and the Binary instructions: AH, AHSC, SH, SHSC carry latch on. Condition Code: 1000 Result is zero 0100 Result is less than zero For all these instructions with auto-length count the setting of the condition code is 0010 than zero inhibited after a setting of the condition code other than zero is detected. Result is greater xxxI overflow 2020 FETOM (5/68) 1-25 Logical instructions: AND, OR, EOR Condition Code: 1000 Result is zero 0100 Result not zero I/O Micro-Instructions The two I/O micro-instructions are Sense I/o and Control I/O. Logical instruction: CLC Condition Code: 1000 The Sense I/O instruc- tion fetches data or information from the 0100 0010 Operand 1 equals attachments, while the Control I/O instruc- Operand 2 tion sends data or control information from Operand 1 is smal- the CPU to the attachments. ler than Operand 2 The attachment point to be sensed or controlled Operand 1 is greate' is speCified by the device address field in than Operand 2 the instruction. Since this field is one byte in length, 256 different attachment points Decimal instructions: AP, Condition Code: SP, ZAP, PPC 1000 Result is zero 0100 Result is not zero xxOl Overflow can be specified. Note: CPU is considered as an additional attachment. Normally the device address is expres s ed by two hexadecimal digits. The To-Reg field in the instruction defines any LS register from During arithmetical operations a carry out of the loworder byte (byte operations) or out of the highorder byte (halfword operations) turns on the Carry Latch. In addition, the carry latch can be set, together with the condition code, by a CTRLinstruction. The contents of the specified register of this CTRL-instruction specifies the condition code (bits 12-15) and the carry latch (bit 11). a to 6 and the high- order bit of. the To-Reg field decides whether the specified LS register is used as data register (direct addressing) or as address register (indirect addressing). Both instructions are executed with ALC when the To-Reg field contains 7 and indirect addressing is specified. LS register 1 contains the field length of the ALC operation. LS register 6 contains the address, addressing the storage location where I/O data is to be stored for SENS In all PL's other than PL 0, where the microprogram can set/reset condition code or or where the I/O data is available for CTRL. carry latch, the value of the condition code The length count is decremented by 1 for and carry latch mU:st be saved by a SENS- each transferred byte. instruction. Before leaving the Program Level, the original value of the condition The operation ends when the LS register 1 code and carry latch should be restored by is decremented below zero (contains means of a CTRL-Instruction. /FFFF/). 1-26 (5/68) 1 CONFIDENTIAL The contents of address register 6 is in- circuit controlled manual operations (MANOP's) cremented by 1 for each transferred byte. can be considered as basic operations similar to micro-instructions. MANOP's are also performed in processing periods. Within the processing periods Circuit Controlled Manual Operations functional steps are performed as during (MANOP's) micro-operations. The main signals, necess- ary to control the CPU circuits, are generated Generally, manual operations are selected depending upon turned on MANOP control by the mode switch on the customer console. latches and switch positions. The s electable manual operations can be MANOP's, processing strings of data, op- divided into two groups: erate in a way similar to ALC micro-in- 1. Manual operations performed by micro-program. struction. These operations are Instruction Step, Address Stop, Display Register, and Alter Register Storage Alter/Fill (see micro-program flowcharts FEMDM, 2020 CPU, Appendix B). The byte, set up in the two data switches, is moved into an addressed main storage position. 2. For Storage Alter, only the main Circuit controlled manual operations. storage address set up by the four address These manual operations are: switches is affected. Storage Fill can be Storage Alter considered as Storage Alter operating in Storage Fill ALC mode. Storage Display the address switches, is incremented during Storage Scan every byte movement. Storage Test possible halfword address is exceeded The start address, provided by After the highest ( /FFFF/ +1 ). storage Fill continues with LS Register Alter address /0000/. LS Register Display Storage Fill ends when the Stop key is operated. Initial Control Program Load (ICPL) CPU LOG in Storage Display/Scan An addressed byte is displayed in the data With the exception that the Op code is simulated register (DR-) U-L indication. The basic by switch settings or key operation, these operation performed is similar to Alter/ 2020 FETOM (5/68) 1-27 Fill with the exception that the byte set up Note: in the data switches is not moved into main LS halfword is read out again and compared storage. against the origin halfword in the CE Select Storage Scan can be considered as For LS register alter, the just loaded Storage Display operating in ALC mode. switches. Scan investigates the main storage contents Check occurs without any other CPU check for correct parity. indic ation. Incorrect parity is re- If the compare is unequal Process cognized by the Shift Unit Check. ICPL Storage Test ICPL can be considered as a complete card Storage Test can be considered as a .modi- read XIO instruction (machine language) in- fied Storage Fill operation (mode swi~ch to cluding service phases. ICPL controls the Storage Fill and CE Storage Test switch on). CPU circuits to read the control program Storage Test is performed by four different loader card into main storage. After the runs. loader card has been read, CPU operates A run covers the main storage addresses /0000/ to /FFFF /. During runs 1 and 2 each core storage halfword position is loaded under control of the micro-instructions previously read in from the loader card. with its address and the address is read out again for compare. Runs 3 and 4 per- form the similar functions but loading and comparing is performed inverted. CPU LOGin CPU LOG operates like a four cycle microinstruction. This operation stores four half- words of CPU status informations into a LS Register Alter/Display The mode switch is set to Alter or Display Register and the CE mode switch has to be defined main storage area. CPU La. uses separate circuits so that the LOG information can be saved even if the normal CPU circuits fail to operate. turned on. The LS register, defined by data switch 2 of the LS zone specified by data switch 1, is altered by the halfword set up in the CE CPU LOG in is always performed before System Reset. The System Reset routine (micro-program) is performed for Power-on, System Reset Select switches and displayed in DR _ P, key operated (after Check), and for Load I, U, L. For LS register Display altering is suppressed. 1-28 (5/68) key operated. IBM CONFIDENTIAL Cycle Steal Operations has to be established between Service Phases in order to avoid Data Overrun when Cycle Steal Operations can be considered as different devices request service siITlul- circuit controlled service phases during which taneously. I/O data is directly transferred frOITl ITlain should be interruptable for the benefit of storage to the requesting attachITlent or vice others of a higher priority. Also, SOITle Service Phas es versa. Cycle Steal operations, requested by the Cycle Steal devices, interrupt any current This is accoITlplished by grouping Service Phases into PrograITl Levels. Service ITlicro-instruction for one processing period Phases in the saITle PrograITl Level cannot (cycle). interrupt each other, those in different Four different Cycle Steal devices can be attached. The cy cle steal requests PrograITl Levels can. froITl these four devices are served depending upon a priority sequence. PrograITl Levels I/O INTERFERENCE The CPU proper can ronceptually be con- • There are two types of I/O interference: sidered to consist of eight sub-processors I/O Service Phases which share tiITle and circuits aITlong theITl Cycle Stealing in a fixed priority scheITle. These sub- processors are called PrograITl Levels (PL). 7. I/O Service Phases They are nUITlbered froITl 0 through The higher nUITlber indicates the higher priority. To each PL, a local storage zone is assigned. Thus, each PL is controlled by Service Phases are ITlicro-prograITl routines, its own IAR. PL 0 which handle the I/O interference caused by to the CPU in its processing state, (CPU, I/O devices with a relative low data trans- executing ITlachine level instructions). fer rate. I/O Service Phases are assigned to PL An I/O service phase is a part of (LS zone O) is assigned the execution phase of a ITlachine language through to 7 I/O instruction and is Service Phases will share one PL. initiated by I/O ser- (I/O levels). In general, several vice request generated in the attachITlents. I/O Service Phases interrupt the execution More than one PL ITlay be on at any tiITle of ITlachine level instructions. but only one ITlay be active, i. e., executing ITlicro-instructions by using its associated Because there are I/O devices covering a zone of Local Storage. The PLs being on wide range of data rates, SOITle priority but not active are called pending PL's. 2020 FETOM (5/68) 1-29 IBM CONFIDENTIAL ,.....Sd___-<:.Trap Request LiVles 1 tOT (rom I/O Q1to.ci-)mev,t.s 5et I C"u1 r.,L I ~--~r---.---~_---r---+'--~----r-~ I I I t ¥l.¢ (act-; ve i( Pt. 1 to 7 0((J A pending PL will become active if all higher quest lines from the attachments to the levels are switched off. CPU, one for each PL (1 to 7.) There Otherwise, a presently active PL may become pending is no trap request line for PL O. (that is processing in this level stops) when a higher priority level is switched on. If coincidence occurs, a trap request over- rides an attempt to reset a PL by a PLTo control the Program Levels, the CPU CTRL. Note that a PL can never be reset contains a seven position PL register. A by trap-requests. priority circuit selects the highest active level out of all which may be on at a given time (figure 1-25). PL 0 (CPU level) is active when all PL register positions are off. Any PL is switched off by a reset-PL instruction, which is a CTRL micro-instruction with a device address from /01/ to /07/. The device address indicates the PL to be reset. Program Level Switching Any PL is switched on by a CTRL with a device address from /09/ to /OF /. The Any PL is switched on by a trap request three loworder bits of the device address (I/O request). define the PL to be switched on. 1-30 (5/68) There are seven trap re- IBM CONFIDENTIAL PrograITl Trapping such as ITlagnetic tapes and ITlagnetic disk drives. If as a consequence of PL switching an- other PL becoITles active, the CPU selects another LS zone. This is called PrograITl Trapping. Cycle Stealing consists in sharing the core memory and part of the local storage between the I/O device and CPU control program. Two LS registers (data address and field length) are used by a de- The trap ITlay be upward(higher PL is vice at a tiITle. switched on) or downward in priority. When all service phases for the currently One ITleITlory cycle is exe- cuted at the next possible tiITle. Thus, Cycle Steal requests have the highest prior- active PL have been served, the correspon- ity for ITleITlory utilization and ITlay even ding trap request latch in the attachITlent interrupt the cycle sequence of ITlicro- is turned off by suitable CTRL-instruction. instructions. The PL itself is reset by a reset PLCTRL. Trapping takes place at end of the current ITlic ro - instruction or at the end of the CPU DATA FLOW current 'loop-cycle' of an ALC instruction but ITlay be delayed by intervening Cycle Steal requests. • Thus, excepting The CPU data flow is shown in FEMDM, 2020 CPU, figure 3-2. Cycle Stealing, a Trap is never delayed by ITlore than four cycles after PL-switch- • ing occurs. The CPU data flow handles halfword data. LS registers 0 to 7 of any zone, de-selected by trapping, are left unchanged. The • Byte handling is perforITled by cOITlplet- IAR points to the instruction which would ing the data byte to a halfword either have been executed next if no Trap occurs. by zeros or by a data byte froITl an- For Traps after branch-type instructions other source. the IAR will point to the branch-address. For ALC instructions interrupted by a Internal Data ForITlats Trap, the LAR pOints to the same instruction. These instructions are re-entrant pOints after each loop-cycle. • The internal data forITlats are shown in figure 1-26. Cycle Stealing Main Storage Cycle Stealing handles I/O devices with high data transfer rates (above 5 K bytes/sec) • The ITlain storage contains the custoITler's area as well as the control area. 2020 FETOM (5/68) 1-31 , .... I OJ -) N Ho.lfword adcll"ess" ~" 51, R So\R' StOHl!!" Ad".ess Rc,,"sJ-,I" r. Ct»~.Ifor4~ ~ I I'~ Cc>~~ AIr~:r J ~ C0. .L. c::'\ t V:::::.) ~ ,';1---!¢ Ip~1 II 1. .t J I ~ 5 , ~d 1- g Pll' , I I - It u a .l.l ~t .1.51 r r JS HAL F WOR)) (l6'Dafa. B;I.. I V(w'i 13/ls) Ip¢: tI ByrES H;~~c(;.~fYl'€i;;Oy~e ~ B~te I Low \. ("5,,0 .lSi ,- Ir"'l ~ ~-+--> I~ ~1-lpl.llI i : I --~" oZ -~'-~Y 5 m , stor~ge. 1-1 ALF r;:::',,\~ -,-~..... } cloJa. floW a.(Wo.~s 0re"'Q~e.s C>Vl ~OR'D b~re 1l. ..,::.r- 8:»o.lt.B;b ... I ~ ,"-' ,.-'" 0 f°W-tMoJs Is. ~I(re""ded wit-/... ~et'C>s.) ~ P..,; f~ t} .. 7PQr;/~ ~ .. F;~",re. .L -.U; l'3 --- I"",{e,r/llq( J)ccta. Forl.M.ots ./.5 .1.4. __ -.._/ (B'tie ~o.lA.dL;IIIJ is a./so e>loVie i", "'Qlfwo\"(~ forV\'lc.t. Tnt: p .-!:L r::::-, , E6J "-" ® Z ~ .'t- a.t a time. CPU ~Vlse L;~es '-'./ ~ Tlf)e -n ~~'" '''-:./ wtalVl ("') -e- r ; ...' .'-' I :llll~;"-+-";lSI Al wa~s ol-\e Ho.lfwtnd is l-eQd olft f"~1M. 0; ~ /';'" I I Ii Hel(Q eleCt,..., ,,/ ~1~1·~.s I 5 .- · - <~. I r r> '-" I I I The: Cc.rrec:1 po.ri ~'1 for ... cl-, b~~e is ObJ) I ~ ~.C I I I !~~ ~;-- I I I ~ ...... 8 J)qtCl BiUo< JS .L5 16 ~ .J IBM CONFIr • The available storage types are SJ 4 nJ' Storage Address Register (SAR) and SJ 2. • • The SAR is a halfword register. which During each core storage cycle one saves Inain storage addresses to be read and one write operation is per- available for read/write tiIne. forIned (read or write cannot be per- • forIned separately). The addresses in SAR define bytes or halfwords. • A core storage cycle is divided into eight T-pulses. Four T_pulses for read and four for write. • For byte handling the unit bit (SAR bit 15) defines the required byte in the halfword read out or to be stored. • A core storage cycle lasts 3.6 microsec (SJ 4) or 2 micro sec (SJ 2). • The core storage cycle time defines • The SAR is parity checked. • The auxiliary storage areas (512 bytes for each 4 K halfwords) are part of the the CPU cycle time, however, both cycles are not aligned. • • Each addressable storage position • SJ 4 and SJ 2 are available as 4 K and Aux storage addresses are specified by the SAR bits 0 and 1 on (byte ad- contains one halfword. 8 K halfword arrays (8 K or 16 K bytes). • control area. (See Figure 1-23). dresses above 48 K ). • For Inain storages sInaller than 48 K bytes. there is an addressing gap between the highest storage address and The InaxiInuIn storage size is 24 K the first Aux storage address (/COOO/). halfwords (48 K bytes custoIner's and control area; three arrays on three boards). • Addressing of not available storage positions {gap positions or not available Aux storage positions up to 64 K • The third board is defined as exten- cause 'read out of blanks' sion (additional circuits for sensed data and inhibit). • For' reading of blanks' the parity bits are forced on (in SDR) to provide a valid halfwords containing zeros. 2020 FETOM (5/68) 1-33 IBM CO; DENTIAL • For CPU LOG in, main storage addresses • checked. are forced by circuits. • SAR can be displayed on the CE console. The halfword to be stored is parity • During CPU LOG in, the parity check circuit is used to test the LOG informations at read time. Storage Data Register (SDR) • The SDR is a halfword register set Operation Register (OP REG) by the main storage sense bits 0 to 17. • • During processing period 0, the op Sense bits 0 to 15 are the data bits, REG accepts the SDR halfword (micro- while bits 16 and 17 are the parity instruction) . bits PO (highorder byte) and PI (low- order byte), respectively. • The micro-instruction in op REG remains during its execution until • The sense bits occur during read time the next instruction is read in. of the core storage cycle. • • For I/O micro-instructions, the low- The SDR provides data to the CPU order byte containing the device address data flow, to the Cycle Steal data bus activates the I/O Address Bus. (bytes or halfwords), and to the Inhibit Switch (bytes or halfwords for regeneration during write time). • The OP REG output feeds the Operation Control Unit and the LS addressing circuits (register selection, X-ad- • SDR can be displayed on the CE console. dresses). • Inhibit Switch • The op REG can be displayed on the CE console. The Inhibit switch selects sources which provide data (bytes or halfwords) to be Operation Control Unit (OCU) stored. • • 1-34 The OC U is an imaginary unit con- Data to be stored is provided by the sidered to generate the CPU control SDR (regeneration), ALU, or by the signals and to provide all necessary Cycle Steal data bus. timings. (5/68) IBM CONFIf")FN" • Some control conditions can be dis- • Each zone contains eight registers (0 to 7) defined by X-address. played on the CE console (OCU 1 and 2 ). • LS register 7 in each zone contains the Instruction Address Register Program Level Control (PL Control) (IAR) which provides the address of the micro-instruction performed as the • The PL Control consists of PL Reg, next. Priority Decision, and Current PL Reg. • Writing into LS is controlled by the LS Write signal, while reading is • The PL control is activated by Trap controlled by the sense amplifier request from the I/O attachments or by gate (SA gate). CTRL micro-instructions. • • The PL control defines the current work LS writing and reading is performed within one T -pulse period. zone in the Local Store (Y -addresses). • The PL Reg can be displayed on the CE console (OCU 2). Modify Address - Register • • The Local Store Address Check (LSA (MAR) The MAR is a halfword register which is set by LS data only. check) tests that always one X- and Y - address is active at a time. • The LS data may be addresses or field lengths which have to be updated by the Modifier. Local Store (LS) • • The LS consists of 64 halfword re- The MAR can be displayed on the CE console. gisters separately addressable. • • Reading of a LS register does not destroy its content. The MAR output feeds the Modifier as well as test circuits which investigates the MAR contents for being zero, minus, plus, or being an invalid • The LS registers are arranged in eight address (Address Check, outside cust- zones (0 to 7) specified by the PL con- orner's area). trol (Y-addresses 0 to 7). 2020 FETOM (5/68) 1-35 Modifier • TDR, FDR, and the ALU result can be displayed on the CE console. • The Modifier is capable of incrementing or decrementing halfwords by one or two. • Apart from being incremented or decremented, data can flow through the Shift Unit (SU) • groups able to modify the To-operand: Modifier unchanged. • • 1. Eight Shift (shift left/right by 8, byte shift) The Modifier output is parity checked. The output parity is predicted depen- • Shift Unit (shift left/right by 2 or 4) 3. Suppress Unit TDR halfwords are fed through the shifted (byte exchange). the operation to be performed. The Modifier result can be placed 2. Eight Shift either direct or cross- ding upon the input parity (MAR) and • The SU is divided into three functional • Both Eight Shift circuit operations are controlled by signals. back into LS only. • The Eight Shift sets a TDR byte to zero (parity is corrected) when no control signal for the corresponding byte is Logical Unit generated. • The Logical Unit is a triple combination consisting of Shift Unit (SU), Invert • The resulting Eight Shift halfword (INTernal SU Bits) are parity checked Switch and Arithmetic-Logic Unit (ALU). (SU Check). • The ALU connects two halfword operands, provided by SU and Invert Switch either • from main storage (SDR- TDR-Eight arithmetically (ADD) or logically (AND, Shift). OR, OE). • 1-36 To-Data Register (TDR) and From- The qU check tests the data read out • The Loworder byte after Eight Shift Data Register (FDR) save the input is set onto the I/O Data Bus to be used operands to be available until the ALU as control data for CTRL micro-in- result is stored. structions (CPU data to attachments). (5/68) IBM CONFIDENTIAL • The Shift Unit handles the INT SU halfword either for shifting left/ • Si:multaneous true and invert control forces zeros. right by 2 or 4 bits or for no shifting. • • No shift left/right and not no shift con- Si:multaneous no true and no invert control forces ones. trol forces the affected byte to zero. • • The halfword at Invert Switch out is The Shift Unit contains circuits for displayed in DR's - E, S, T, Ron nor:malizing packed deci:mal signs custo:mer console. according to ASCII or EBCDI code (as selected). • The Shift Unit provides test circuits, Arith:metic-Logic Unit (ALU) which investigate packed deci:mal data • for being valid. SU and Invert Switch halfwords are used as ALU input operands • The Suppress Unit suppresses the SU halfword partially (in defined • bit groups) or co:mpletely. The ALU connects the input operands either by ADD, AND, OR, or Exclusive OR (OE). • The output of the Suppress Unit, which provides the :modified TDR halfword to the ALU, is displayed in DR's P, I, • ADD, AND, and OR functions are controlled by ALU gates, while the OE U, L on custo:mer console. function is always perfor:med when no ALU gate is active. Invert Switch • The ALU provides Six Correction circuits used to generate valid packed deci:mal digits (ALU loworder byte • The Invert Switch trans:mits the FDR only). halfword either true or inverted • The two bytes can be controlled separately. • A carry latch recognizes the carry out of the highorder AL U byte (halfword operations) or carry out of the loworder byte (byte operations). • The true and invert functions are controlled by signals. 2020 FETOM (5/68) 1-37 IBM CONFIDENTIAL • The ALU result condition sets four Condition Code latches respectively • The Address and Data Bus are line loops which leave CPU (device ad- (micro-program condition code). dresses SENS or CTRL from OP REG loworder byte; CTRL data from low- • • • The ALU output is parity checked order byte after Eight Shift) and enter (ALU Check). CPU by setting into FDR. The ALU parity (highorder and low- • order byte) is predicted depending the corresponding attachment by data upon the parity of the input operands provided by a source which is selec- and the performed ALU function. ted according to the device address. The ALU result can be saved in LS, used for addressing (branch), or • Either the complete result halfword, • or the loworder byte is stored. • For storing a byte only, the Inhibit 'For CPU internal SENS' s the sensed information is directly set into FDR. stored into main storage. • For SENS, the Data Bus is activated in CPU SENS data are either of byte or halfword format. • Switch halfword is completed by a The Data Bus entry is parity checked (Bus Check). SDR byte (regeneration). CPU Cycle Steal Control I/O Bus Out and In • • The CPU Cycle Steal Control is acti- The CPU communicates with the I/O vated by four Cycle Steal requests attachments via the I/O Bus only. generated in the Cycle Steal devices (part of the attachments). • The I/O Bus consists of an Address Bus and a Data Bus. • All control information necessary to execute cycle stealing is provided • Besides Address and Data Bus, able by the Cycle Steal devices. to transport one byte at a time, a small number of control bus lines is provided. 1-38 (5/68) • Status information of the executed cycle steal operations returns to the IBM • CONI='I")I=~'T' ~ , Cycle Steal devices (e. g.• a CS Inhibit Check does not stop CPU. but the information is saved in the CS device). • Cycle Stealing stops all current CPU operations for one cycle. • The CPU Cycle Steal Controls data transfer (byte or hal£word) from or to CPU via the Cycle Steal (CS) Data Bus. 2020 FETOM (5/68) 1-39 IBM CONFIDENTIAL CHAPTER 2. CPU BASIC TIMING FUNCTIONAL UNITS storage type, SJ2 or SJ4, the oscillator frequency is either 4.000 MHz (SJ2) or 2.222 MHz (SJ4); • The CPU Basic Timing circuits and a thus, an oscillating period lasts either 250 nano- corresponding timing chart are shown seconds (SJ2) or 450 nanoseconds (SJ 4). in FEMDM, 2020 CPU, figures 4-30 oscillator circuits contain two potentiometers which and 4-31. allow Pulse A and B adjustments (Figure 2-1). The Potentiometer 1 adjusts the distance between the raising slopes of Pulse A and Pulse B. Potentio- meter 2 adjusts the duration of Pulse A and B. OSCILLATOR The + Oscillate pulses control the Storage Select signals (SJ2 only) and the latch ring • The oscillator provides the pulses A of the four Binary Latches which provide and B and the Oscillate pulse. the I/O Clock Pulses 1 and 2. To generate the Storage Select signal at • Depending upon the used core storage the correct time (within T2 or T6), the type, SJ2 or SJ4, the oscillator frequen- + Oscillate cy is either 4 or 2.2 MHz. late) by a delay line which is adjustable pulse is delayed (delayed Oscil- from 0 to 125 nanoseconds by changing tabs. • Pulses A and B are adjustable. Pulse A and Pulse B control several internal CPU functions, which are executed • The Oscillate pulse controls the gener/ within one T-pulse period. ation of the two I/O Clock pulses (1,2) and the Storage select signal. • Storage Select is us ed for SJ2 only. The oscillator consists of a crystal oscill- SHORT TIME CLOCK ator and pulse former stages which provide three different pulses at the oscillator output. These pulses, Pulse A, Pulse Band • The Short Time Clock provides the timing pulses Tlthrough T8 Oscillate, define the basic CPU operating • timing. This clock is continuously running, con- The crystal oscillator produces pulses of a con- trolled by pulses A and B, when System stant frequency. power is applied. Depending upon the used core 2020 FETOM (5/68) 2-1 N I N SJIf '" .2..ll~MH1. EJ@l Pot 1 ~ Pot~ h ...r J h fJ h fJ + PULSE Ar J + PULSE I T 8 '-', ,.:,:- T'D If-JtS"rcc ,. 25¢nsec I r ~:~~:=:::~-:'--T . --1 ________ _ L' ~~;;:)(~~;~ " :,.f-"_ __ It...>----------45_.,.= .. , .-J I ~~--------~L_ I ~----....., .. ________~r- ____~ FI=~-~~=~~~--~--------: ----------- --- --- ...- ........J _______ _ I ·1 .1~..,scc: + Pulse A c1e14~ 0; I--:....---~ () \WI\(, ~ ¢ 19l ns«. oZ -n ~fbt2) :125:-~ ~ I ----.... 115n.... _ - - - - rr.-l~~lI'Isec--J (Potl) + Pl.Ilse. Pt..lseA + htlse B + Osc. i lIate. f "'sec +Clod< AdvQ\"Ice 5]2. ¢-lU_ OSIILLAToR CARl> l~ - sIlt j -t-OSCiL.LATE '---, + Osc:ill~te '. ...r\ T]) +Pulse A , om Z ~ 'f!! B Pulse. SJ.2. J 4.0~¢NHz. A SJ4 I 2.222. MH~ IBM ('I)NF1DENT1AL • For SJ2 the Clock Advance Pulse A is These periods are: adjustable to move pulse B as far as Read Cycle SJ4 possible to the end of a T-pulse period. = T6 - Tl Write Cycle SJ4 = T2 - T5 The Short Time Clock consists of the Short CS LS Select Time Time Latches and the decoder circuits. The Time T8 - T3 decoder circuits provide eight timing pulses Time T4 - T7 == T5 - T2 numbered from 1 to 8 (Tl to T8). The pulses Tl to T8 are generated depending upon the switching sequence (figure The delta Short Time Latches 1, 2 and 3 switch in 2-2) of the Short Time Latches 1, 2 and 3. the same sequence as the Short Time Latches. These latches are advanced by each Clock Since the delta latches are advanced by the Pulse Advance Pulse A. The output B, their switching is delayed for a half T-pulse of the latches are also used to define processing periods period (half of an oscillator period). This allows which are longer than one single T-pulse. generation of the delta T8 pulse and especially Clock Advu\l1ce. Pu lse A 5J4 s~o~t 0 G c ~ 5 off H l.- 3 1. H S E I E ~1 c .'if T T I • M E TJ T8 2. 3 R E A D 1--n tiTS' P- E A D T2. T3 T4 U.T~ .1 TG I S l- sJ2,. ! Time(.atclt\es W R I W T P- E I T E ~~ FL2. NaHlloy~otF/..3 2020 FETOM (5/68) 2-3 IBM CONFIDENTIAL for SJ2 shifting of the Read and Write Cycle for a half of aT-pulse. The source of the Clock Advance Pulse A (defines the start of the T-pulses) is different for SJ2 and SJ4. For SJ4 the Pulse A is di rectly used as Clock Advance pulse. For SJ2 the Clock Advance Pulse A is generated by the delayed Pulse B. The delay is adjustable from 0 to 125 nanoseconds. If the rnaximurn delay is selected,the delayed Pulse B occurs at the same tirne as Pulse A. 2-4 (5/68) IBM CONFIDENTIAL RUN CONTROL I/O operation even if the CPU has been stopped before. The Initial Control Program Load (rCPL, • • The Run Control contains all circuits circuit control reading of the control necessary to start or stop the CPU, program loader card) is performed by a as well as the circuits to generate sequence of start-stop operations (restarts all reset signals. by Trap requests 5). The CPU is started when one of the following keys is operated Power On key CPU START Start key The CPU operates when the delta Process System Reset key latch and the Process latch are turned on. Load key Thus, CPU start can be considered as a switching sequence (figure 2- 3) of several The Run Control circuits control CPU start and CPU stop. Besides the start-stop control, the start latches which results in turning on the two process latches. circuits provide the necessary reset signals. Run Control operations are initiated by operating the keys on the customer console or on the remote control box which is connected to the socket on the CPU Start by Power On CE console. The remote control box attached blocks the function of the console start key (Block • Normal Start). The CPU is started by: Power On starts CPU to perform the system reset routine. DUring power on the logical voltages reach their 1. Power On (to perform System Reset). 2. Operating the Start Key (remote control box or console; Normal Start). operating levels at different times. This causes undefined activating of CPU control components (latches, registers). To ensure a defined CPU 3. Operating the System Reset Key. start Situation, the System Reset Routine is per- 4. Operating the Load Key. formed. However, performing the System Reset Routine (micro-program) requires the CPU to be When the CP U is stopped while any I/O started. device is still operating, the CPU is restarted either by UNEQUAL PL (Trap re- Figure 4-41 in the FEMDM is a timing quest) or by ANY chart of the run control action during CS REQUEST. This restarting allows com.pletion of the current power on. 2020 FETOM (5/68) 2-5 IV I '" 1-<:E5TART CPU operates 0; VlO .. < StopA",,:! Cov."j,f.OIV---..... L-._ _ _ _ _ _ _ yes ~ 8z o" m Z ~ j> r- IBM CONFIDENTIAL CPU Start by Operatin~ Start Key lock Latch. Thus, the start latch cannot be turned off. • Operating the Start key starts CPU The continuous operation ends when the to execute the micro-program or Start key is released. manual operations. When the Single Micro-Instruction switch Operating the Start key on either the is on, only one Alter or Display operation customer console or the remote control is performed. box initiates the action shown in Figure For CE Single Cycle operations the CPU 4-42 in the FEMDM. stops after each of the four cycles. CPU Start by Operating the Control Program Load Key Continuously Alter or Display • • Operating the CPL key initiates ICPL. • ICPL controls reading of the control Storage or local Store Alter or Display is repeated as long as the start key is operated when the Single Cycle program loader card by circuits. Switch and the Single Micro-Instruction switch are both turned off(normal). • After the loader card has been read the further control program is loaded Storage or CE Local Store Alter or Display are manual operations under control of the micro-program. which are performed by four cycles (cycles 0 to 3). CPU operations, except manual operations These operations are initiated by pressing (MANOP's) , are performed under control the Start Key after the mode switch on of the micro-program. the customer's console and the CE mode program is stored in the Main storage,only switch on the CE console have been set circuit controlled CPU operations like accordingly. MANOP's can be performed. The start sequence is performed as des- When the no micro- One of these circuit controlled operations is Initial Con- 1/ cribed in CPU start by Operating trol Program Load (ICPL). The ICPL oper- II Start Key. ation performs all necessary controls to The stop condition which deactivates the read one punched card by an I/O device Hold Run Condition occurs at Alter or which is specified by set up CE Address Display cycle 3 (figure 2-4). However, switches. when the Start Key is continuously pressed, The ICPL operation consists of four cyc- the Allow Continuous Alter or Display con- les (0 to 3). dition occurs, which resets the Start Inter- formed for each card column being read The cycles 2 and 3 are per- 2020 FETOM (5/68) 2-7 N ! 00 il ~ !t I ~ :3 S~rtT;V'\'Ie(~L....;.,.JL;.;:..J..;;::...j.,;:..,J..:...L!.-I,.:~~=..J,.:..t..::.~.1...l..4- '\J-=...s..=:..L::....1.:::...~~I.,;......I...,;..,.j...::...L.:::.J..::::..L::...J....:-t..::-J,..;.....l.-:..4--.L..;:;;.s..;::.Jr..;:..J....:..l+ St-(lrt ~~ Sf-cut t:L 4 Stc;ut ihNcFJ.. is Setup RUVlCOna. " .A f'l'oC:CS's FI. !1 PI"OCCSS FL il Hold Ru . . COnd. ~--------------------~ 5----------------~ 5----------------~ I 1 - :.i ..~ ~cleAi~.. I 1-- __ .____ -__ !J/J 4 Alief..; t:ol'l/;nuOt.lS AUe.t: 01' J)tipla:t Raser- Shu/. lf4fedO¢K FI.. . !"<>fcH~ 3-.(..._ _ _ __ - -_ __ 3cmc:I~!j1o. ,. _. ~--1 1-- 0,.. ·~~er¥':Q*, -_---JL.::e-' dI'---,-_ ·L J. ~ -t ¥- l~-~-r~1:,' ,~ t E t ~ ~ 1 -t ~:i ;t--+:t-... ;;~1 ~ t[ ~L[+:::: ~;~ ' - i"+r-r ::-:L':,,:e-;:: +-, !1'1'1'mOOlt~'+f~' {;:;C' Ft-.·:;1 '+' :$:+'i :t "'; ::! C"ic:"~' i: .tt11 1'~; :;;:;: ~,c ;;i; ~.rHi;; , :. =t;; " ;;~ ',,£'i ":1;; ;mE: ;;::i:/ q :;1>; ~.;:::; , p"," '; '111 ~;r:4i ij; .,+ !~}~: :~ :e;e:= ~+, t;:;:t t ';';!f :':r' +i:: :~~m ::1£: }i%i: ;:;-:,p¥ hot i-'+-j -:r~~_--l±~ >-~r' ~t it r.:::'~:. t~~1=t+ t:±+t IftttH litH· l=r!i .>-iT ,. t-' 'i ;1. ;' ,L:: b, :.1 ei"lt' . :; th:r'':! cL ;.c: .. ,' ,'l ;::! '-;C"-i§' r:: hi ~ .--, -,.....:. ~ + c~JJ]~; fi ;~+ ,+,0 tH=t '", ~;llii: ",c:: ;.c; ;ii::2!;';"~':';;1:-~'+ -.-1 ~:;;! i:: lie:' .,I; I::"'" 1::<;.; ;':L ,:: ""'. ..+- I~~~~~~~ 1~:;~+,~t:r:~Jtc:'If~::n~~;~ IT; ~H:;; :"1; ,~~ ;:f'i: :::~ '~~ ",1:\;; + T·':' "r. ::;;>~;l:f;;;l;; : 1 " , ~f: fi.:!':ii-i; : :·'~:i ~~: Iii I ihT ;;1: :, ,,'c ~I ;s - 1'::1::' ::-r: ffi ,'+ :Hi :,;r±:L ::±;:lj:~n::;""' :£;::::!-, ::: :: t.!:::t:: ;-;-; t;:~~'b; ;:,;.;:: ::~+)'~ ;~f;i~;ff:~;!t1 +;:::! fi~H'ml;"f,: 4 ':'; :~: m: ~£ :'; Stt(;-=;-l "±jIG'!; +m tar ;:!i~i:l."~: 2, ~r :..--: :.:.- :.: flo:, "~:-:r·: t:, I::;:;";:.;!: [1'':1::$ +c"C ,: Hiff:::I;::' : £ 1 : ' :iiliti ; tT r. . ~~~~: :,::,<.ct :;,,=.!~ -~lf ,IU;;;!;::: U,: :';;:T:':;':~';:;' ~~~JS~ yrrn ;:;~h-:~'t!:i:<: iI~i ~.;;:o lit r-;J ,- ::i~ :;:,,:,~ ':;Ic:':;;;ljit;;~ ;';£:d:::i~F~ U;E ~;+ : t T ; : ; : p : : : : 0;lf: :r,,+:!;;: ,t ;:1 ~ 1-:-: :c::;:':' cr' '::" .$' HE ;';:;; ftL;jfTi;~~i ,,,,,,,,;,;,]:.,.,," ""',.: IF , -:" "i+ i&' ~cC:ji :0: ;~: ;!~;; " ,:;,. ~::: !,:' ,; ~:;: 'rc :;lI:='J.r:.cl-'lJi';fi:' f":"'l .tit ;j' ht ::~: :':i, ','t'e ;;;t:,It:,~:E:,'i ,:c_"£'~';:. c' ''+ * :';~ -: ~ ~r~ ;;,± ~~; ~q:;;,I:!.i If "1 . -r . ;'C;,::' :::' :;;::[$ ~!1' \;: !i:;r~li- E; 1.:1 ",.,;c :e:;!,' ""' +:::£ :,'iSi :7::(:;:;:: t + .tr :<: :mm~ ~m J:: P4i r;:;;: ;:r::;J( ;p;o ':::', +- !-::'j ; :]l~I L~F,ii ~~ :.;:;: B.i!t;:;j 1tit 'cd:! r- H~ ~_~ ~ r--t+-f ~-:~ + t-ri . ' lrr -;-1-'-+ Ftlt _-4 + ?f ,1_ :.:::.:;;;::;: tt.T :~-H- - +h ;~-ttt:t::; ~++ J1.H ~f-; :;4 ~t+: .~ -r;+~ ~ ~-:t :t-,+ '"o ;J ~ , '" .... .... +c:.!;iH"1~ :~: t;-:: ~:ic1=t :L~:i=:f'L -;:' r g+ '"o ;-;_._. :Ff,:;, £~ , 2, t++ ~~; .1;+ i~~ , ~', 'lF~ !" + ::: .- .,J ~-1'M ;ff~ ':~ ttft ::: t",2 IBM CONFIDENTIAL Request Line 5 active). cycles (0 to 3) to be performed as soon For each Trap Request 5, the sense and as the delta Process and Process latch store cycles (cycles 2 and 3) are executed are turned on. until the field length, updated during each start address of the System Reset Routine character transfer, is decreased below /C002/ is set by circuits into IAR of the zero (Decrement Carry 0). Local Store zone 7. Then the During LOG cycle 3 the After LOG cycle 3 End Op Latch is turned on (cycle 3) which the LOG latch turns off and during the follow- activates the Hold Run Condition con- ing delta cycle and cycle 0 the first micro- tinuouslyand causes the Long Time Clock instruction of the System Reset Routine to advance to delta cycle and cycle 0 is read out from Main Storage. At the The active End Op Latch indicates that the end of the System Reset Routine the Load circuit controlled ICPL operation is ter- Latch is checked for being on by a SENSE minated and the CPU starts to execute instruction. the micro-program placed into Main micro-program to branch to the load storage. routine while load latch off (System Reset) Load latch on causes the causes a CPU stop by a HALT microinstruction. CPU Start by Operating the System Reset Key or the Load Key CPU STOPS • System Reset and Load start with the System Reset Routine. The CPU stops when the delta Process latch and the Process latch are turned off • Operating the Load key turns on the by dropping the Hold Run Condition. Load latch. An overall picture of all possible CPU stop conditions is given in figure 2.7. • For System Reset the CPU stops Details about stop circuits are shown after the System Reset Routine while in figure 4.40 in the FEMDM. the active Load Latch forces a branch to the Load routine. CPU start by operating the System Reset Common CPU Stops or the Load Key on the customer console is performed similar. Common Stops are those, which can occur Operating one of the keys initiates the during customer t s use of the system as action shown in figure 4.45 in the FEMDM. well as during CE operations. 'The active LOG latch forces the four LOG The common stops are divided in normal 2-12 (5/68) N o R M A S-tOYCI.;le 'J);se'(l:Jo\' ALtet" aVId C.jck3 L (OHHON S ,;]ste""" Reset ke,'1 / C PL ke~ / ot" LOCl.d ked opev-a.tc:cl dl.<.Y,'Vlj CPU ruVi (ProcesS/Vlot Sto.t /I"Jlk H) STOPS """' _ __ eked" ICPL,V\oi- C~c.1c:.2 o.u.d I/lot E;",d(!,)p ICPL,C:t(e2., o.V\~ I/o Erv-oV",I.Vt.eVl. 1/\(9+ . 'lA;ho.l Load Loop $1,J.Or V10t ~roccss Clnoc.k Ovet"y;cle SI.V.OVl, N o ~E STOPS R ""L A ~to\'"o..~e. Test Check ...'" / W S+cnQ.'1e. I feSt, EV)d Or t-u.I/\.2 0..",0/ llAvell'r 'Pc.~; h:r Sw. stop I. yes RESET PIALS RESET cI.OCK. RESE:r PULSE MANUAL RESET CLOCK s top I --_,,", FL SI-op FL 5YSTEM RESET Pow", 0 " ke..:J.-_-+"cu.."",'-'-'-"f"-'-J..i.~"'+:...u;.,;.u;-,"-"-+,-,,-,-,-.:.:;.;,;.,,"-! St",.! ke ~Pi. he" ~~'ie~~~~~t£~~_~~~~~~~L4'_______+-____~ ~sl k e~_~ _ _.-Lw..L.-L-'-'-.J-<.-U-<'----~ N ... I ....., rePL Reser l1uLSE. l.OG FL foyce CPU LOG IBM tONFI~ENTJAl CORE STORAGE One C I I I i WRITE+ ! Current ....-.:-I::;.m~-+-~___I-_...:;_-I-_-'-_(Plus "'READ I I • The core storage unit, 4K or SK, is Current (Minus Direction) +Im Direction) selfcontained on a single SLT board. • F There are two core storage units available: • • 4usec and 2usec. MDM page SDOII is a block diagram of the 4usec core storage. Figure 2-t Hysteresis Curve of Magnetic Core flux in a negative direction, and at point D a residual flux in the positive direction. These two directions can be arbitrarily MDM page SAOII is a block diagram as signed as binary' zero' and binary' one' , of the 2usec core storage. respectively. 1m is the amount of current necessary to change the state of the core. Plus 1m i. the amount MAGNETIC CORE THEORY of current required to 'flip' the core from A magnetic core is a small. doughnut- shaped binary zero to binary one. Minus 1m is the ring that is uniformly constructed of ferrite same amount of current in the opposite particles bonded together by a ceramic mater- direction required to flip/the core from ial. The ferrite particles have good magnetic binary one to binary zero. properties and the core has a high retentivity On the hysteresis curve, it can be observed of the magnetic flux lines after the magnetiz- that a magnetizing current of plus 1m will ing force is removed. It is this property of change the magnetism of the core from retentivity that makes a magnetic core use- point A, a binary zero, to a value in the ful as a storage device. positive direction at point C. When the The operation of a magnetic core can best current is removed, the total amount of ., be described by reference to its hysteresis magnetization drops back to point D (binary curve, Figure 2_". This curve is a plot of one). If, instead of the full magnetizing the relationship between a magnetizing current current 1m ,a current of Im/2 were applied, and the flux dens,ity of the core. the flux would change only-the small amount A magnetic core is capable of maintaining from point A to point B on the curve, and indefinitely one of two stable magnetic states, when the current returned to zero, the flux either at point A or at point D on the hyster- would return to its original value. esis curve. Because the core has two stable A reverse current, minus 1m , develops flux states, it can be used asa binary storage of opposite polarity and, if the core is in device. At point A the core has a residual the 'one' state, changes the magnetic state 2-18 (5/68) ,aM C.ONADENTIAl of core from point D to point F. When the driving current is removed, the magnetization drops back to point A {binary zero}. Writing Into Core Write Select and Inhibit The magnetic properties of the core make it ideally suited for use in a storage matrix employing X and Y drive lines. Each core of the matrix is threaded by three windings {Figure 2_it}. One winding is an X drive line .that carries a current 1m/2 and one winding is a Y drive line that carries a current 1m /2 in the same direction. A coincidence of current in these two windings occurs at one core storage position {18 cores} thereby I selectingl that word. The third winding is the inhibit/sense winding. When writing into a core storage position, each core that is not to receive a lone l bit is inhibited by a current 1m/2 flowing in its inhibit/sense winding in a direction opposite that flowing in the X and Y drive lines. The magnetic field produced by the inhibit/sense • winding effectively cancels half the field produced by the X and Y drive lines. The re- Combined Functions Figure 2-'" Core Storage Write and Read (4-usec Storage) Up sulting magnetic field is insufficient to flip used instead to detect the change in state of the core to the lone l state. the magnetic flux. The sensed bits are set into the corresponding positions of the B Reading Out of Core register. When information is to be read out of a core l_ storage position, the currents 1m /2 in the X and Y windings are reversed {Figure 2-1IIt}. Each core that flips from a 'one' to a 'zero' ADDRESSING state induces a pulse into its inhibit/sense • One X drive line and OIleY drive line winding. The inhibit/sense winding at each are activated by selecting both ends core does not carry inhibit current and is of the lines. 2020 FETOM (5/68) 2-19 JBM CONFIDENTIAL • Each active drive line carries half- array, one line in each group of eight is select current. activated by a decode of Address Register bits 6, 7, and 8. Thus, a single X line is • The two drive lines intersect at one activated and carries half-select current . core in each bit plane {18 cores} to At side B, the 128 Y lines which run through provide full select current at that all planes, are divided into eight groups of one halfword. 16 lines each. One group of 16 lines is activated by a decode of Address Register bits Eight-K Addressing 9,10, and 11. At sideD, actually the other The magnetic cores are arranged in ma- end of the array, one line in each group of trices of 128 x 64 cores, called planes. 16 is activated by a decode of Address Re- (Each plane is actually 128 x 68, pro- gister bits 12, 13, 14 and 15. A single Y viding 512 po s itions of auxiliary storage line is thereby activated and carries half- that are not program addressable and are select current. described in another section.) The 8K In each plane, the core at the intersection array consists of 18 of these planes with of the active X and Y drive lines receiw,s each plane assigned to one bit position of full-current and is the only core in the a core storage halfword. Corresponding plane that is selected. core positions in each plane are addressed simultaneously by the X and Y drive lines to select one 18-bit halfword. Since there Four -K Addressing are 8192 cores in each plane, the 8K array One plane of the four-usee core storage 4K array has a capacity of 8192 halfwords. is shown in MDM page SD042. The 128 x 64 matrix in MDM page SD041 for the two-usee core storage is shown in MDM represents one plane of the four-usec core page SA042. storage, 8K array. Eight-K addressing for same area of the SLT board. the two-usee core storage is shown in MDM used in the 4K array are identical to those used page SA 041. It differs from the four-usec in the 8K array but only nine planes are us"ed. core storage only in the drive circuits which addressing purposes, each 128 x 64 plane is divi- are described in another section. The one ded into two 128 x 32 half-planes. core that is shown is selected by the address haIf-planes is assigned to one bit position of the represented by Address Register bits 3 to core storage word. 15. Since there are 4,096 cores in each halfplane, At side A, the 64 X drive lines, which run the 4K array has a capacity of 4,096 half- through all planes, are divided into eight words. (An auxiliary storage of 256 half- groups of eight lines each. One group is words is actually part of the 4K array: it activated by a decode of Address Register is described in another section. ) The 32 X bits 3, 4, and 5. At the other end of the drive lines are divided into four groups of 2-20 (5/68) Four-K addressing The 4K and 8K arrays occupy the The core planes For Each of the 18 IBM CONFIDENTIAL eight lines each (one-half as many groups address-register-bit-l and - 2 lines. These as in the 8K array). The X lines run through lines connect from the SAR Power output the nine B halfplanes, then loop back through the nine D halfplanes. One group is acti - to the core storage circuits through wired .L2. logic. Figure 2-8 shows the combinations vated by a decode of Address Register bits required to activate each module. 4 and 5 (bit 3 is not used with 4K core storage). At the other end of the X lines, one line in each group is activated by a decode of Address Register bits 6, 7, and 8. A single X line is ADDRESSING - AUXILIARY STORAGE thereby activated and carries half-select current. The 128 Y drive lines are divided • Within 2020 CPU's with a serial number 50,000 and above the auxiliary storage into eight groups of 16 lines each, as in the areas are part of the control storage. 8K array, and run through all nine planes. One group of 16 lines is activated by a decode Auxiliary storage is selected by the auxiliary of Address Register bits 9, 10, and 11. At read-driver and auxiliary-read-gate circuits. the other end of the array, one line in each These two circuits are activated by the address- group of 16 is activated by a decode of register- bit-aux. line. This line is activated Address Register.bits 12, 13, 14, and IS. by SAR Power depending upon SAR bit 0 This active Y line intersects the active X and I active. line at two cores in each plane; therefore, nine planes provide 18 bits for each of 4096 halfwords. CORE STORAGE ARRAYS MODULE SELECTION • • One module (one SLT board) of core Core storage arrays are available in two sizes, 4096 (4K) halfwords and storage can contain a 4096 - or 8192- 8192 (8K) halfwords. core array. • • Each halfword consists of 18 bits. • Both arrays consist of core planes Address register bit I and bit 2 lines select the module. in a 168 x 68 matrix (168 x 64 prog- • Module selection lines are connected J,J. through wired-logic (Figure 2-.). The circuits that activate the core storage ram-addressable). • The 8K array contains 18 physical clock and timing circuit, and therefore select planes, each of which contains one the unit, require a specific combination of bit_position for each halfword. 2020 FETOM (5/68) 2-21 '" + Read (Modul. SeI.ctTon) I '"'" Cy XW,ite Gate + R.ad Cycl. + Add< Reg Bit 2 Time _ long Time X Reoe! Lr---=------r-......,f.-......J~~.!I----- Driver Time -8 YWrite Gote Time Y Reod Driver Time - long Time - Addr Reg alt 2 +5_ Select + WrIte ----;=+=++=====:j::==:ill!ill + long Time +Wrtfe Cy ... long Time Cycl. X Read Gate Time X Reod Source Time ... StCllOg8 U..e +A4K) in an 8K array. • X read gates and drivers are conditioned at TO (CPU T6) time for a duration of approximately one usec. Inhibit current flow is from ground, through 2048 cores, through the inhibit driver that is conditioned, to -V Inhibit (V z). V z is • X write gates and drivers are con- a temperature responsive voltage that ranges ditioned at T4 (CPU T2) time for a from -9 to -12 volts. duration of approximately one usec. • Sense Amplifier As in the four-usec storage, the two-usec The conditioning of Y read and write gates and drivers is delayed to allow X drive line noise to subside. storage sense amplifier has a differential input from the two ends of the inhibit/sense Four-usee storage timi~g-pulse geh- eration is initiated by the transition line for 4096 cores. The center point of this of the CPU read/write cycle. line connects to the corresponding inhibit driver. J.'1 Figure 2-" represents the four-usec storage 'clock' and timing circuits. The CPU provides The first stage collectors contain a trans_ former circuit that eliminates any dc unbalance to provide an equal detectionthreshold for both polarities of signal. This stage does not require the emitter strobe that the four-usec s:ense amplifier requires. The 0.8 volts at the emitter of the second stage keeps the first stage out of saturation. the following signals to1the storage timing circuits: read cycle, ~rite cycle, storage select, and the Address Register 3 line. The following timing pulses are generated by the' clock' circuit: long time, short time, and strobe. Combinations of the CPU signals and the generated timing pulses provide read and write gate and driver control, strobe pulses for less than and greater than The sense - strobe pulse gates the output 4K, emitter strobe pulse, and inhibit pulses of the second stage to the final stage. A for less than and greater than 4K. negative pulse output of the final stage results when a 'one' bit pulse is conducted Note in the timing chart (MOM SO 031) that from the array to the sense amplifier Y write current and Y read current rise input. after X read current and X write current. 2020 FETOM (5/68) 2-33 N I W "'" Write Cycle Read Cycle Read Cycle " Not M Re A Strobe "" 4K 0; '0\ A .2; M Reg 03 Fl Strobe" 4K Write Cycle Long Time fnhibit Time < 4K Inhibit Time > 4K long Time Storage Use Emitter Strobe Storage Use Write Cycle Not M Reg 03 M Reg CPU 1i~ ~fo.,.... f':! Ti;"'c. X Write Driver Control long Time ---- b n TO 'Ii rJ. T2 In T3 Tit 1'6 T4 TS x Write Gate Control IT, TO Read Cycle X Reod Driver Control 0; -.J Read Cyde ..., Write Cycle X Reod Sink X Write Sink :!l Sl>:>rt Time Write Cycle Short Time X R.od Current --1 Y Read Current ~ Y Write Driver Control Y Write Gate Control r X W.lt& Cu",,"1 Y Write Current L Inhibit Time Figure 2~ J.~ 'LR@ d D1J.1tt C~n!ffiJ ,---, ---.II Strobe 0 Z --1 l.ong Time ~ () Four-Microsecond Core Storage Clock Y Read Sink Y Write Sink 0 m Z .... » r- IBM CONFJDENtlAL The delay of the Y currents minimizes the When read cycle and write cycle change levels effect of excess noise at the rise of the X (at TO and T4 time), the input points reflect current pulse. This noise is caused by the the respective levels for one usec then ba- discharge of array capacitance. lance again. The same effect is evident at the taps (points 3 and 4) except for a shorter duration. Four - usec Storage Clock • A time delay' clock' circuit develops the necessary timing pulses for addressing, reading from, and writing into core storage. Timing - Two-usec Storage • MDM page SA 031 shows the timing pulses for the two-usee storage . • Long time: a time delay circuit provides a one usec pulse at TO (CPU • shows the two-usec circuits. write cycle). Short time: a latch provides a pulse • approximately 750 nsec. and ends with the fall of long time. Strobe: a single shot, activated by X read gates and drivers are con- ditioned at TO (CPU T6) time for that begins after the rise of long time • .1. 2-l~ storage' clock' and pulse generation T6, read cycle) and at T4 (CPU T2, • Figure • X write gates and drivers are con- ditioned at T4 (CPU T2) time for short time, provides a pulse that is approximately 750 nsec. ANDed with read cycle and an address line. • • Y read drivers and write gates are conditioned at the same time as the Inhibit time: long time and write X drivers and gates. cycle are ANDed to develop inhibit time. It Time Delay CircWt (Figure 2-_). Read • The conditioning of Y read gates and cycle and write cycle are connected to write drivers is delayed 100 nsec opposite ends of a one usee delay line. The after the X drivers and gates to allow low resistance of the delay line causes the X drive line noise to subside. levels at the inputs (points 1 and 2) to balance. For example, if read cycle is 0 volts and write cycle is +3 volts, points 1 and 2 balance at +1. 5 volts. The two-usec I clock' consists of a time delay circuit three latches, and two single-shots. The timing pulse generation is initiated 2020 FETOM (5/68) 2-35 IBM CONFlDE"NTfAL Read Cycle ----~~Rr_~~~~ ~+,...._____________-.:;:S~et'----I . -Set Time r---------------~--Lo-t~ch~~ Short Time -OR I--~ Delay flsec. Write Cycle R 1-_+-__-+_..=;.__--1 Long Time Storage Use TO T2 T4 T6 TO I I I I I .ReadCy~ l O.Ov--- Write Cycle +3.0v---·-1 +1.5v +3.0v 8 I l o.~ 0 L IL-___ Long Time . Short Time Figure 2-*" J.8 -.J Time Delay Circuit, Four-Microsecond Storage Clock by the storage select pulse from the CPU. input of a time delay circuit for the following; Storage-select, which is a IOO-nsec pulse the IOO-nsec delayed output turns on the at TO and T4 or XO and X4, turns on the short-time latch, the 600-nsec output turns long-tinle latch and the inhibit-time latch. off long-time and short-time, and the 650- Storage-select is also connected to the nsee output turns off inhibit - time. 2-36 (5/68) IBM CONFIDENTIAL The timing chart shows theoretical and ac- chart. Inhibit-timing is ANDed with the tual timing for each signal. It shows long time data lines and address-register-bit_3 or corning up soon after TO time, falling at the not-address-register_bit_3 (not .shown in 7S0-nsec point, rising again soon after T4 the diagram) to activate the inhibit drivers time, and falling 7S0 nsec later. The inhibit- for less than and greater thiiln 4K. time latch is turned on at the same time that long-time is but the timing shown is inhibit-timing, after it has been ANDed STORAGE ADDRESS REGISTER with write cycle. Short-time rises 100 nsec after long-time • for Read and Write. and falls at the same '.ime. Strobe is a 330nsec pulse generated by two single-shots that are started by short-time. Long-time and short-time are ANDed, in The SAR saves Main storage addresses • • The addresses are of halfword formats Addresses are provided either by LS or ALU output. various combinations, with read-cycle and The Storage Address Register (SAR, Fig. write-cycle to produce X and Y gate/driver 4-S3 FEMDM 2020 CPU) saves the current circuits are conditioned by long-time. The Main storage address to be available for the Y read driver and write gate is also conwhole core storage cycle (Read/Write) ditioned by long-time; but, the Y read gate The SAR, able to hold addresses one hal£word and write driver are conditioned by shorttime. in length, consists of 18 latches numbered PO to IS. Only the bits 0 to IS are used for Strobe is ANDed with not-inhibit-timing and addres sing. address-register-bit-3 to produce sense- The addresses may arrive either from the strobe-8K ; not-address-register-bit-3 is local store (LS) or from the ALU output (Sum used to produce sense-strobe -4K. Bits). In the timing chart, the Y current (low order end) shows a pulse at TO and T4 time. This pulse is present, due to the initial charging of array capacitance, although the X line is not conditioned at the other end at this time. The Y read current (high order end) SAR Input Control • and Y write current (high order end) begins at short time, when both ends of the line are conditioned. The SAR Input is controlled by LS to SAR or ALU to SAR. • • The SAR is reset/set at TS. ALU to SAR is only performed for TRBS/ Inhibit-time is ANDed with write-cycle to TRBL and the RD format micro-instruc_ produce inhibit-timing, shown in the timing tions (cycle 0 or "1). 2020 FETOM (5/68) 2-37 IBM CONFIDENTIAL LS to SAR bytes. Halfword addressing is achieved by This is the common signal. It is active when the Delta Process latch is on without any CPU check. However, ALU to SAR prevents LS to using the even part of the byte address (SAR bits 0-14) only. The unit bit (SAR bit 15) is used to specify the left PO-7) or right (PI-IS) byte of the SAR. halfword, which is read out from storage ALUto SAR or will be written into storage. This signal is necessary to place the ALU output into SAR. It can only occur when the Process latch is active and no CPU check is turned on. For Cycle Stealing, the ALU to • powering of the address bit lines. SAR signal is suppressed (LS to SAR active). ALU to SAR is only forced by a small number • of micro-instructions. These micro-instructions are TRBS/TRBL SAR Powering provides the necessary After SAR Powering the SAR bits are defined as Address Register bits. • Aux storage areas are addressed when SAR bits 0 and 1 are both on. LH/STH BZ/BM • are forced by circuits. BP/BAC B (unconditional) The storage addresses for CPU LOG SAR bits 0-14 are fed to SAR Powering. These instructions have one common function, The SAR powering circuits provide dri ver viz. , to change addresses either by branching circuits for powering the address lines (to or using a displacement address. main storage) as well as logical circuits to ALU to SAR can only occur during cycles force addresses for CPU LOG in, and to de- o and code Auxiliary storage addresses. 1. The bit outputs of the SAR powering circuits are defined as Address Register bits to be • Addresses in SAR define bytes • Since the core storage operates on a two compatible with the line definition of the core storage circuits. byte (halfword) basis only the SAR bits o to • 14 (even) are used for storage ad- dressing. SAR Check SAR bit 15 defines the byte in the half- • word addressed by SAR bits 0 to 14. The SAR is checked for correct parity. The SAR contents are checked for proper parity The Main Storage is addressed on a halfword (odd). SAR Check causes Process Check and basis. However, the addresses in SAR define the CPU stops at the end of the current cycle. 2-38 (5/68) lRM CONFIDENTIAL The erroneous address in SAR remains un- If Storage Use is prevented, all core stqrage changed. functions are suppressed and no Sense Bits are provided. Thus, SDR would be blank (no data bits, no parity bits) after read time. However, SDR can be transferred to other SAR Display The SAR contents are displayed on the CE console when the CE Display Select switch CPU components even if Storage Use is prevented. This would cause any parity check. is set to SAR. Thus, no Storage Use condition forces SDR bits PO and PI to provide correct parity_ Invert Parity condition, caused either by STORAGE DATA REGISTER Storage Test operations or by operations with the Invert Parity switch (CE Console) turned • The SDR is set directly by the core sense pulses at T8 on, prevents forcing of PO and PI, because even parity (Inverted parity) is required in this special case. • The SDR is reset when a core storage cycle starts (T 6). SDR Output The Storage Data Register (SDR, Figure 4-54 FEMDM 2020 CPU) is a halfword • The SDR data is provided to : OP REG, TDR, Inhibit and as CS data out bits register. to the active CS device It is set by the halfword corning from the core storage sense amplifiers. The Sense Bits are numbered from 1 to 17. The bits 16 and 17 are the parity bits PO (16) and PI (17). The SDR output is fed to the Op Register (micro-instructions), to the To-Data Register (Data), to the Inhibit Switch {for regeneration), or to the Cycle Steal Unit (CS Data out). The SDR is reset at each T6 (Start of Read time) when the Delta Process latch is on. SDR Display The SDR contents are displayed on the CE console when the CE Display switch is set to SDR. SDR Parity INHIBIT SWITCH • No Storage Use (no sense bits) forces SDR bits PO and Pl. • The Inhibit Switch selects the store data sources. 2020 FETOM (5/68) 2-39 IBM ¢ONFIOENTI\t\l o The Inhibit Switch processes always one halfword at a time. The Inhibit switch (Figure 4-55, FEMDM • or Address Check occurs. • can provide data to be stored. The sources for normal operations are SDR and ALU output. For Cycle Stealing, the data sources are the Cycle Steal buffer s in the IOC, Stor- Only for Storage Test the result is stored during cycle 2. 2020 CPU) contains the control circuits necessary to select the different sources, which ALU to Inhibit is prevented when a SAR The ALU output provides the final result, which shall be stored into core storage, during cycle 3. Only a few numbersof micro-instructions provide a final result of one halfword in length. These instructions are: age Control Feature, or in the BSCA. STH CPU LOG in uses special circuits and the SLM/SRM normal operation circuits. MVH AH/AHSC SH/SHSC ) yormal Inhibit 9,perations During cycle 3 of these instructions, the comSDR to Inhibit • • plete ALU output (halfword) is transferred to Inhibit. However, transferring is suppressed The SDR data is regenerated. in case of SAR or Address check (regeneration, SDR to Inhibit is forced for SAR or see SDR to Inhibit). Especially for Storage Address Check. Test (Store Runs 1 or 3), the halfword to be stored is already present at ALU output during The data movement from SDR to Inhibit cycle 2. Thus, transferring to Inhibit is per- is defined as regeneraUon , because the formed during cycle 2. data read out during read time are immediately stored back into the origin Mixed ALU/SDR to Inhibit storage position (Address in SAR is the same for Read and Write). • When the ALU result is one byte in length, the second Invert Switch byte derives directly from SDR (regeneration). • SAR Bit 15 defines the Invert Switch byte into which the ALU to Inhibit reSl..~t byte is in- serted. • The ALU output is stored during cycle 3. • 2-40 • The byte result is always provided by Sum bits PI to 15 (ALU loworder byte) The result can be a halfword or a byte For micro-instructions ,which provides a final in length. result (cycle 3), only one byte in length, the (5/68) IBM CONFIDENTIAL second byte of the halfword to be stored is or Pl-15 are gated to Inhibit. The second byte provided by the SDR (regenerate the byte not of the halfword to be stored is provided from affected). SAR Bit 15 (odd or even byte address SDR, controlled by either CS Force Regen in SAR) defines into which byte of the halfword SDR 0-7 or CS Force Regen 8-15. the result byte has to be placed. The result Both CS Force Regen signals are active for byte is always provided by the right half CS Write operations (regeneration of the half- (Sum bits PI-15) of the ALU output. Thus, words read out and transferred to the CS de- there is a control to transfer ALU 8-15 either vices). to Inhibit 0- 7 or 8-15. The byte to Inhibit movement is suppressed in case of SAR or Address Check (regenerate SDR). For Storage Alter or Fill the byte move- Inhibit Check • Incorrect (even) parity in either the high:" order or loworder Inhibit byte causes ment occurs during cycle 2. Inhibit Check (indicator on GE console). Inhibit Cycle Steal • CS Inhibit control functions only for CS Read. • CS Inhibit data are provided either as halfword or as byte. • For CS byte transfer SAR bit 15 decides whether the highorder or loworder byte • Inhibit Check stops the CPU after the current cycle. • The CPU stops after the current cycle. • CS Inhibit Check does not stop the CPU immediately. • Inhibit Check does not prevent writing of the faulty data. of the Inhibit Switch halfword is used. • The Invert Switch halfword is completed by a SDR byte (CS Force Regen SDR). An Inhibit Check occurs if either the inhibit During Cycle Steal (CS) operations the normal bits PO - 7 or the inhibit bits Pl-15 are of in- inhibit control circuits are blocked. The CS correct parity. The inhibit check turns on the Inhibit control functions only for CS Read Inhibit Check latch, when operating normally, operations (data is written into core storage). or the CS Inhibit Check latch, when operating Data is transferred from the CS devices to the in cycle steal mode. Inhibit either in halfword or byte format. The Inhibit Check latch signals the check condition via interface lines to the CS devices. An Inhibit check during normal operations stops the CPU after the current cycle. The For byte transfer (CS HalfwordFL off), SAR erroneous data is written into the addressed Bit 15 decides whether CS Data in bits PO-7 core storage position. 2020 FETOM (5/68) 2-41 '8M CONFIDENtIAL Inhibit LOG The LOG inhibit control has two different func- • tions. During the LOG cycles 0, I and 3 , the Inhibit LOG provides circuits able to test the contents of Data or Address registers for correct parity. LOG_in informations deriving from the CE Display Bits are gated to the inhibit. The second function is performed during cycle • The bytes of the tested register are forced to ones (/FF /) or zeros (/00/) depending upon the found parity. • • • data or address register which could cause the check is investigated for its parity. The The correct byte is set to /00/, while byte with the wrong parity is forced to /FF / the byte with wrong parity is forced (all bits on) while the correct byte is set to to /FF/. zero. During Write time the halfword is stored. Testing is performed during LOG cycle 2. The halfword does not show the real bit pattern of the register, but the forced ones or zeros During cycle 0, land 3 the CE Display bits are selected as LOG information. 2-42 2 only. During this cycle the contents of the (5/68) allow to define in which byte of the register the error has occured. .8M ¢Ot'r/FIQENTI.t OPERA TION CONTROL • For LS Display OP REG bits 8 to 11 (Data sw. 1) defines the LS zone, while the bits 12 to 15 define the LS register (Data sw.2). OP REGISTER At Tl of Delta cycle 1, the SDR is gated into OP REG as for micro-instruction handling. The OP Register (OP REG, Figure 4-60, FEMDM 2020 CPU) is a halfword register used to save micro-instructions during their execution. HQwever, Storage Use is prevented and SDR contains zeros (correct parity). Thus, the OP REG is set to zero. At T2, the two hexadecimal values set up in the data switches are placed into OP REG bits 8-15 (without parity). The values are used as device address and specify the I/O which is used to read cards OP REG Input for initial control (micro) program load (ICPL). For LS display or alter the value provided • The SDR is set into OP REG at T 1, delta cycle 0 (reset/set). by data switch I (OP REG bits 8-11) specifies the LS zone (RI Decode) while the value in data switch 2 selects one of the eight LS • During CPU LOG in, changing of OP registers (R2 Decode). REG contents is pr evented (- LOG), because the contents is used as LOG in information (LOG in cycle 2, se- OP REG Output cond halfword). • The OP REG bits 0 to 3 define the OP REG Decode signals OP REG Input for MANOP • /0/ to /F /. The OP REG Decode signals are the main part of micro-instruction OP code. • For ICPL the Data switches 1 and 2 are set into OP REG bits 8 to 15 at • The OP REG bits 4 to 7 are either part of the OP code or, for Rl, RD and I/O T2, delta cycle O. format instructions, the Rl-field. • After T2 OP REG bit 8 to 15 contains the • codes. device address (8 -11) and function specification (12-15) to read the initial loader card. The OP REG is tested for Invalid OP • OPREG bits 8 to 15 provide either the Rl and R2 field (FF -format) or the device 2020 FETOM (5/68) 2-43 J8M CONFJ{JeNllAl • • • address and function specification (1/0- immediately after cycle 0 (End Op CY 0, no format) execution) . OP REG bits 4, 8, 12 or 15 can define direct or indirect operand addressing. OP REG Bits 8 to 15 The OP REG parity bits do not affect the For micro-instructions of Rl or DA format decoding. these bits carry the immediate data byte or OP REG bit PI (sets FDR bit PO) allows parity checking of the Address Bus. the displacement address, which are not needed to control the operation. For RR-format micro-instructions the bits The bit pattern in the OP REG represents the micro-instruction to be executed. This bit 8 to 15 provide the addresses of the To-and From-register. The bits 8 and 12 are used pattern remains unchanged until the next micro-instruction is entered in (T 1 of next delta cycle 0). The importance of the Op register bits and the generated signals are shown in detail in figure 4-61 in the FEMDM. to indicate whether the adjacent three bits (9-11 or 13 to 15) specify a LS register which accepts or provides data (direct ad ... dressing) or the specified register is used to address Main storage positions (indirect addressing). The bits 8 to 11 are defined as Rl-field (1. OP REG Decode operand) while the bits 12 to 15 are defined as R2-field (2. operand). For Rl-, DA- and The OP REG Decode circuits investigate the four OP REG bits 0 to 3 (upper part of OP code). These decode circuits (AND combinations) provide control signals, called OP REG Decode 0 to F, according to the hexadecimal value in bits 0 to 3. The OP REG Decode signals are active during the whole execution time of the micro-instruction. I/O - formats, the Rl-field is in bits 5 to 7 (4 to 7 if I/O). The three address bits (5 to 7, 8 to 11, or 13 to 15), able to represent the values from o to 7, are decoded. The resulting signals are called either Rl or R2 Decode 0 to 7 in respect to the source field. The switching between the two Rl fields is performed by investigating the Op code. OP REG bit 0 on (OP REG Decode 8-F) and not OP REG Bits 4 to 7 B, SENSE or CTRL defines the RR format The OP REG bits 4 to 7 are either additional instructions. Thus, the bits 8 to 11 are used. OP REG Decode informations or register All other instructions use the bits 5 to 7 as addresses (Rl, To-register) Invalid OP code. the Rl field. The OP REG bits 0 to 7 and 8 or 12 are checked For LS display or alter (MANOP), the bits for invalid OP code. The resulting control sig- 9 to 11, set according to Data switch 1, are nal (Invalid OP code) forces end of operation used for Rl Decode (selects the LS zone). 2-44 (5/68) lBt-l CONFIDENTIAL The micro-instructions SENSE and CTRL as • The cycle sequence can be changed, well as ICPL use the bits 8 to 15 as device depending upon the micro-instruction addresses and function specifications (SENSE to be executed. and CTRL numbers), which are sent to the attachments (channels, control feature, BSCA) via the address bus. • The provided cycle control signals are: End Op Cycle 0, 1 or 2, Skip ahead, The parity bit PI is directly set into FDR bit and Skip to repetition. PO for parity checking of the returning address Depending upon the micro-instruction Op code bus. Especially for MVHS, the three bit- address provided by the Rl field is inc!emented by one to provide the address'-of the second register for splitting (Rl A, during cycle 2). The Rl field address is incremented by forcing the unit bit. Thus, incrementing is only possible if the Rl address is even. If Rl is odd, no higher adjacent register can be specified and splitting cannot be executed. and the bits indicating direct or indirect addressing (OP REG) the cycle control circuits (Figure 4_61, FEMDM 2020 CPU), generate signals to switch the Long Time Clock. The Long Time Clock fixes operating periodes called cycles and delta cycles. Normally the Long Time Clock steps from cycle (delta cycle) 0 to 3 and starts again with cycle O. However, depending on format and type (direct or indirect addressing), a microinstruction can end after any cycle (End Op) OP REG Display or can skip cycles (e. g., skip from cycle 0 immediately to cycle 3). The OP REG contents are not parity checked, but can be displayed on the CE console, when the CE Display Select switch is set to OP REG. Cycle Control Circuits CYCLE CONTROL • The instruction bit pattern in OP REG controls the cycle control circuits. • The Cycle Control switches the Long Time Clock. • • The End Op signals cause advancing of the Long Time Clock to cycle The Long Time Clock defines the delta (delta cycle) O. cycle and cycle periods. • Normally the Long Time Clock provides • The Skip ahead and Skip to repetition the cycles (delta cycles) 0 to 3 in se- signals switch the Long Time Clock quence. to any cycle (delta cycle), except 2020 FETOM (5/68) 2-45 IBM CONFIDENTIAL 4. LS register 1 contains the field length. The CLC, XX type, compares on byte basis. The compare result sets the condition code latches (CCO, cc 1, setting a new condition code. During cycle 1 of this additional repetition, the End Op latch iss et. CC2) when the CC bit (bit 6) in the micro-instruction is on. The result may be EQUAL (CCO) or UNEQUAL (CC 1 or CC2). The cycle sequence for CLC, XX type, starts with cycle 0 and continues with function cycles 1 and 2. For ALC, the function cycles are repeated (Skip to repetition; Skip CY 2 to CY 1) until an End Op Field Length below zero: When the compared bytes are equal until the last repetition, a Decrement Carry 0 occurs when the field length in LS register 1 is decremented by 1 (T8 to T3) during cycle 1. This Decrement Carry 0 sets the End Op Latch (End Op gate, cycle l, from T 1 to T3). condition occurs. The field length is decremented by one and the data addresses (LS reg. 3 and 5) are incremented by one, each time Note that the compare result may be UNEQUAL the function cycles are performed. for the last repetition and the CC latches are set accordingly. End Op The active End Op latch prevents the Skip to The CLC with ALC ends when the End Op repetition (Skip CY 2 to CY 1) and forces End latch turns on. The End Op latch can be turned Op cycle 2 ( skip to cycle 0). Thus, the Long on at T3 during cycle 1 by two different con- Time Clock is set to cycle 0 after cycle 2 and ditions. the next micro-instruction starts. Result Unequal: Since the CLC with ALC compares two strings of bytes only two compare results, EQUAL or UNEQUAL, are possible. SENSE or C TRL with ALC During each repetition two bytes are compared The I/O format instructions SENSE and CTRL and the compare result sets the condition operate with ALC when indirect addressing code latches. As long as the compare result (bit 4 on) is specified and Rl field addresses is EQUAL (CCO), the comparing must be con- LS register 7 (IAR, bits 5 to 7 on). The Rl tinued. However, if result is UNEQUAL (CCl field is not used for addressing. It is part of or CC2) , no further comparing is necessary, the Op code (defines ALC). The data address because this is the final result for the complete is in LS register 7, while the field length is string of bytes. in LS register 1. The data address is incre- The compare result, setting of the CC latches, mented by one while the field length is decre- is provided at the end of cycle 2 mented by one, each time a byte is transferred. j too late to terminate the operation immediately. Thus, Note that bytes are transferred depending on an additional repetition is performed without cycle time. 2020 FETOM (5/68) 2-49 SENSE with ALC After cycle 1 , the End Op CY 1 condition After cycle 0 the Long Time Clock is ad- (skip to cycle 0) ends the operation and vancpd to cycle 3 (Skip ahead; Skip CYO to starts thE' next micro-instruction. CY 3). Cycle 3 is the function cycle (store cycle) during which the sense data enters CYCLE CONTROL FOR MANOP'S t]1(' CPU and is stored into Main storage. The storage position is defined by the address • in LS register 6. After cycle 3 the Long Time Clock is ~et sequence, no End Op and Skip ahead sig- to nals are generated. repeat the fu,nction cycle (Skip to repetition; Skip CY 3 to CY 3). The Decrement Carry 0, Since MANOP'S use the cycles 0 to 3 in • ICPL, Storage Scan or Fill, and Storage to which occurs when the field length is counted Test repeat functions, similar below zero (cycle 3), sets the End Op latch. instruction with ALC, by Skip to repe- The active End Op latch prevents Skip to re- tition signals. petition and forces a Skip CY 3 to CY 1. During cycle 1 the micro-instruction address (JAR) is updated. For ALC operations the IAR updating during start cycle (cycle 0) is prevented to allow recalling of the instruction in case of trap request interruption. The End Op CY 1 condition (skip to cycle 0) ends the micro- The MANOP'S usethe cycles 0 to 3insequence Thus, no special cycle control for Skip ahead and End Op is necessary. All operations end with cycle 3. However, MANOP'S which must operate strings of data need repetitions of function cycles like micro-instructions with ALC. These MANOP'S are: operation and starts the next micro-instruction. CTRL with ALC 1. ICPL 2. Storage Scan or Fill 3. Storage Test After cycle 0, the Long Time Clock is advanced to cycle 2 (Skip ahead; Skip CY 0 to CY 2). Cycle 2 is the function cycle (read and operand 1) during which the control data is read out from Main storage and set on the data bus. After cycle 2 the Long Time Clock is set to repeat ICPL • • rCPL loads the CPL Loader card. ICPL ends when the loader card is read (field lE'ngth decreased below zero) and the function cycle (Skip to repetition, Skip the CPU starts execution of Load Control CY 2 to CY 2). The Decrement Carry 0, in- Program (micro-program routine). dicating that the field length is below zero (cycle 2), turns on the End Op latch. • The active End Op latch prevents skip to repetition and forces a Skip CY 2 to CY 1. During cycle 1 , the IAR is updated. 2-50 (5/68) • During ICPL, the CPU stops after cycle o when any r/o is working. ICPL continues with cycle l, when any I/O working drops IBM CONFIDENTIAL • • The CPU stops again after cycle 1 until tition signal Skip CY 3 to CY 2, which sets a read request occurs. the Long Time Clock accordingly each time The read request starts the CPU again and cycles 2 and 3 are executed. • the CPU is started again by a trap request. The Skip CY 3 to CY 2 is prevented by the After cycle 2 the CPU stops and starts active End Op Latch, which turns on when the again with cycle 2 (Skip to repetition), Decrement Carry 0 during cycle 3 (T8 to T3) when the next read request occurs. indicates that the field length is decreased Operating the ICPL key starts the CPU. Processing starts (cycle 0) when the Delta Process latch and process latch are active. After cycle 0 the CPU stops when any I/O is below zero. Thus, the Long Time Clock advances to cycle 0 during which the first microinstruction starts which has just before read in by ICPL. working. The Long Time Check is not advanced. When the any I/O working condition drops, the CPU starts again and the Long Time Clock advances to cycle 1. During cycle 1 the specified read device is started. After this cycle the CPU stops again. As for cycle 0, the Long Storage Scan or Fill • Storage Scan or Fill repeats the function cycles 1 to 3. Time Check still contains cycle 1 after CPU stopping. Now the CPU waits for the trap request which • Storage Scan or Fill ends (End Op condition) when the CPU Stop Key is operated. indicates that a character has been read, which Storage Scan and Fill differ in data handling. has to be transferred into Main storage. During Storage Scan the data are read out for The trap request starts the CPU and the Long parity checking and stored back unchanged, Time Clock advances to cycle 2 and 3. During while during Storage Fill a byte set up in the these cycles, the character enters the CPU data switches is stored into each Main storage and is stored into its specified Main storage position within the customer area. position. Storage Fill or Scan operations start with After cycle 3, the CPU stops until the next cycle 0 and the Long Time Clock advances trap request (next character) becomes active. in sequence until after cycle 3. The repe- The Long Time Clock still contains cycle 3. tition of the function cycle s 1, 2, and 3 is Each time a character is transferred, the forced by the skip to repetition signal Skip field length in LS register 4 is decremented CY 3 to CY 1. For Scan or Fill, no field by one, while the data address in LS register length is necessary. The End Op latch tUrns o is on during cycle 3 when the CPU Stop key is incremented by one. To store characters, the number which is specified by the field operated ( Stop latch on). The active End Op length, cycles 2 and 3 must be repeated. The latch prevents further repetitions and drops the repetitions are controlled by the Skip to repe- Hold Run condition to stop CPU. 2020 FETOM (5/68) 2-51 IBM CONFIDENTIAL Storage Test • largest address which can be kept in a half- The St orage Test is perforlTIed by four by 2. runs. • Each run starts with address 0000 (protected The Length Count (LC) latches are used as run counter. • • word (/FFFE/ = 65,434) when increlTIenting area) and a four cycle operation (cycle 0, I, 2, 3). For the following addresses up to During Storage Test the core storage /FFFF /, the function cycles I to 3 are re- halfwords are loaded with their own peated forced by the skip to repetition signal address. Skip CY 3 to CY 1. Run I and 2 load and cOlTIpare the addresses true while Run 3 and 4 load and cOlTIpare the inverted addresses. A run ends when.the End Op latch turns on at T 3, cycle 3, by an IncrelTIent Carry O. The active End Op latch prevents the skip to repetition. Since the CPU is kept running (Process relTIains active), the • • • During each run, the addresses are in- Long TilTIe Clock advances to cycle 0 , and crelTIented by 2 frolTI /0000/ up to the next run is initiated by a four cycle opera- /FFFE/. tion. End Op condition (run end) is caused by The End Op latch active at the end of each an IncrelTIent Carry (address). run frOlTI T 3, cycle 3, until T 3, cycle 0, For each address the function cycles I to 3 are repeated. advances the Length count (LC) latches. At start Storage Test, the LC latch latches are all off indicating that Run I (Store run) • Storage Test is terlTIinated after Run 2, has to be perforlTIed. The End Op latch turns when th'e CPU Stop key is operated, on (T3 to T3) at the end of Run I and sets the The Storage Test perforlTIs four different LC 2 latch (T7, cycle 3, not AUX LCI). runs. The Length Count latches keep the in- The active LC 2 latch forces COlTIpare Run 2. forlTIation which run is in process. Run 2 starts and runs silTIilar to Run I, but The four runs are: with compare functions. Run I Store Run Run 2 COlTIpare Run Run 3 Store Invert Run Run 4 = COlTIpare Invert Run. The End Op gate, (cycle 3, TI to T3) caused by IncrelTIent Carry 0 at the end of Run 2, allows setting of End Op latch and A UX LC I latch (LC 2 latch on) at T3. The active End Op latch stops repetitions A run ends when the End Op latch turns on during cycle 3 by an IncrelTIent Carry 0, which occurs when the highest possible address is exceeded. within Run 2 and the Long Time Clock advances to cycle O. The AUX LC I latch, active frolTI T3, cycle 3, until T3, cycle 0 (reset), resets LC 2 latch This address is not the highest Main storage (End Op latch on) and turns on LC I latch address (including control area), but the (End Op and not Invert Parity latch) at T7. 2-52 (5/68) IBM CONFIDENTIAL The LC I latch indicates the invert runs (re- Test it is activated for Storage Fill or Scan mains active for Run 3 and 4) while the LC 2 if the Invert Parity switch on the CE console indicates the compare runs (Run 2 and 4, is turned on. Thus, the s can or fill operation normal and inverted). is executed with the incorrect parity and all The active LC 1 latch turns on the Invert CPU check latches have to turn on. Only the Parity latch (Run 3, cycle 0, T3). This latch Process Check latch remains off, but it is remains on during Run 3 and 4 (LC 1 active). set (Attention indicator on) when not all CPU At the end of the Store Invert run (Run 3, checks are turned on. End Op) LC 2 latch turns on again, while LC 1 Thus, Process Check during inverted parity latch remains active. LC 2 and LC 1 latches operations paints either to lost data bits or on indicate Run 4 (Compare Invert run). failing CPU checks. At the end of Run 4, the AUX LC 1 latch is active (cycle 3, T3, to cycle 0, T3), and resets LC 1 and LC 2. The droppe-l LC 1 latch LONG TIME CLOCK allows resetting of the Invert Parity latch (cycle 0, T 3). Thus, after Run 4 all LC latches are reset and Storage Test starts again with Run 1. The Storage Test ends after Run 2, when the • The core storage Read/Write time defines the CPU cycle time. • The Read/Write time is devided into eight Timing (T) pulses. Stop key is operated. This provides correct parity in Main Storage. • A core storage cycle lasts from T6 to T5, while CPU (data floW) cycle runs from T 1 to T8. • Invert Parity Latch • • The complete CPU processing period (delta cycle and cycle) to T8 (end cycle). The Invert Parity Latch is active during The period the core storage needs for a read Storage Test or when the Invert Parity and write operation is a cycle. Thus, the switch (CE) is turned on. cycle time depends on the core storage pro- Invert Parity latch on cause CPU operations with even parity. cessing speed. Each core storage cycle (Figure 4-65 FEM DM 2020 CPU) is devided into eight time seg- • Operating with inverted parity turns on all CPU check latches, but a Process Check (CPU stop) occurs only if a check latch fails to turn on. ments named timing (T) pulses (four Tpulses for Read and four T-pulses for Write). Thus, a core storage operation is performed by eight steps. However, the basic period The Invert Parity latch allows CE operations necessary to process data in the CPU (Data with inverted (even) parity. Beside Storage Flow), requires 13 steps. The additional 2020 FETOM (5/68) 2-53 IBM CONFIDENTIAL five steps are provided by overlapping the d~ta The cycles 1 to 3 are defined as function cycles. flow processing periods. Thus, a pro- cessing period starts before the preceding one is terminated. The period during which processing overlaps Long Time Clock Latches • cycle latches (1 and 2) and two cycle with the preceding processing period is called latches. delta cycle. During delta cycle all those operations are performed, which do not influence The Long Time Clock consists of two delta • The delta cycle latches are controlled the data handling of the preceding processing by the End Op, Skip ahead, and Skip to period. The delta cycle lasts as long as a cycle repetition signals at T4 (start delta cycle). (eight T pulses). After the fifth 't.pulse of a delta cycle, the cycle (also eight T-pulses) • The cycle latches (1 and 2) accept the starts. Thus, the basic CPU processing period delta cycle latch settings at T 1 lasts from start of delta cycle until end of (start cycle). cycle (13 T-pulses). 'When the CPU operates in Single Cycle Mode • No End OP, Skip ahead, or Skip to repetition signal causes that the Long (CE), the period from start delta cycle to end of Time Clock advances automatically cycle is the actual processing time. at each T4 pulse from 0 to 3 and starting CPU processing is a sequence of delta cycles again with O. and cycles (processing periods) to perform functions specified by micro-instructions or • MANOP's. The delta cycle and cycle numbering depends on the binary value expressed During one delta cycle and cycle only one by the latches (display CE c.onsole). access to the core storage is possible. Thus, micro-instructions or MANOP's, which require more than one storage access, also • The Reset Clock signal turns of all clock latch to define the start con- require more than one delta cycle and cycle. dition (cycle 0). Note: Since delta cycle and cycle are al- ways considered together, the term CYCLE will be us ed to cover both. • Figure 4-64 in the FEMDM shows the advancing of the long time clock. Micro-instructions and MANOP's use up to four cycles. These cycles are numbered from o to 3. Each cycle performs a basic function: Long Time Clock Start and Stop Cycle 0 = Read out micro-instruction. Cycle I Read out second operand. Cycle 2 Read out first operand. Cycle 3 = Store result or .data. 2-54 (5/68) • Timed by the active Start latch, the Reset Clock signal occurs for Power on, system reset, ICPL or Load. IBM CONFIDENTIAL • The Long Time Clock advances for the Normal Stop first time at T4 after delta cycle 0 (Process latch active). • Normally the CPU is stopped by a 'Halt and Normally the CPU stops by a "Halt and Display" micro-instruction. • Long Time Clock is prepared (delta cycle 0) for the next start. • • • (HALT) micro-instruction. This instruction requires only one cycle (cycle 0) and forces the End Op CY 0 signal. At the Since the "Halt and Display" instruction causes the End Op CY 0 signal, the • Display' end of delta cycle 0 (T4) Delta Process drops. However, the delta cycle latches are advanced once more by the End Op CY 0 signal, since Process is still active until Tl. After CPU check stop, the Long Time The acception of the cycle latches is per- Clock contains either the error cycle formed, since this function is gated by Delta information or the information of the Process. cycle after the error cycle. Thus, for a normal stop the same clock con- For single cycling the delta cycle latches ditions (prepared to start cycle 0) exist as contain the condition of the next cycle after Clock Reset. When the Start Key is (delta) while the cycle latches show the pressed, the clock starts as described for last performed cycle. Clock Reset, but without resetting. The clock can be manually reset after check stop or single cycling when the Check Stop Single Micro-Instruction switch (CE) Any CPU check stops the CPU either im- is on and the Stop Key is operated. mediately after the cycle in process or after the next cycle. During CS operations, the Long Time After check stop the delta cycle latches are Clock is not affective. already set according to the next delta cycle, The Long Time Clock advances at each T4 while the cycle latches still contain the last when the CPU is running (Delta Process cycle performed. and Process latch on). This fact has to be remembered when identifying the error cycle, if an CPU check has occured, using the cycle display on the CE Reset Clock console. For Start of Power on, ICPL, System Reset, or Load (customer's program) the Long Time Single Cycle or Single Micro-Instruction Stop Clock is reset by the Reset Clock signal. After this stop the delta cycle latches are The reset Clock signal is active as long as already set according to the next delta cycle the Start Latch is on (T8 to while the cycle latches still identify the last The clock is reset to cycle O. T8). cycle performed (displayed on CE console). 2020 FETOM (5/68) 2-55 IBM CONFIDENTIAL Manual Reset Clock console) on, while the CPU stops. Resetting clock (cycle 0) either after check Reset Clock signals are provided at T4 until stop or Single Cycle or Single Micro-Instruction can be achieved by operating the Systern Reset key, the ICPL key, or the Load key. However, operating one of these keys destroy.! valuable inforrnation the Single Micro-Instruction switch is turned off or CPU is started again (Stop latch turns off). Clock Functions for Cycle Stealing (register content, in- dicators,and so on), since the systern reset routine is perforrned. During the Cycle Steal cycle (T6 to T 5, To allow MANOP1s (Alter, Display, Scan, Cycle Steal latch on), advancing of the Long Fill, Test) without resetting inforrnation. Tirne Clock is prevented. The cycle condi- The clock can be reset rnanually. tion of the clock is ineffective. Since the clock Manual Reset Clock is perforrned when the is not advanced, norrnal processing starts Stop key is operated (Stop Latch turns on) again at that point where it was interrupted with the Single Micro-Instruction switch (CE by cycle stealing. 2-56 (5/68) IBM CONRDENTIAL LOCAL STORE The zones as well as the registers within a zone are numbered from ~ to 7. The zones are defined by Select LS Y (~-7) LOCAL STORE AND LOCAL STORE CONTROL signals, while the X-addresses (~-7) specify the registers. Local Store LS Input Control • The LS, mounted on two cards, consists of 64 halfword registers. • To write a halfword or a byte into a LS WRITE signal must be active. • Each of the 64 LS registers can be separately addressed. • Halfwords which shall be stored into LS are provided either by the ALU or by the Modifier. The Local Store (LS) is an internal storage device able to store 64 halfwords. • During direct addressed I/O SENSE's the The LS (Figure 4-70 , FEMDM 2020 CPU) byte provided by the Data Bus is directly consists of 64 halfword registers (LS re- set into the specified LS register low gister) which can be separately addressed. order byte, while the high order byte is is filled with zero. Each LS register consists of 18 bit cells, which are considered to be latches. • ALU to LS is performed at T5 or T8, while Thus, a LS register consists of 18 latches the MAR to LS condition is present for numbered from PO to 15. all other T-pulses. The Local Store is mounted on two cards. • I/O Bus to LS occurs only at T8 and overrides ALU to LS. One card provides the latches PO-7 of all 64 registers, while the other card provides the latches PI to 15. • During CPU LOG the start address /C 000/ of the system reset routine is forced by the input circuits and is LS AddreSSing • set into IAR of zone 7. A LS register is selected by a Select LS .. Y signal and a X-address. The LS registers are arranged in eight zones. Each zone contains eight registers (8· times 8 equals 64). Data forced during CPU LOG in • The LS input timing depends on the LS Write signal. Only this signal active allows storing of data into LS. 2020 FETOM (5/68) 2-57 IBM CONFIDENTIAL LS Write is generated by circuits Zone Selection depending upon Program Level depending upon the micro-instruction in the OP REG. • • LS New PL and LS Old PL zone gate alternating generates the select LS For details see figure 4-70 in the Y signals depending upon the present FEMDM. New and Old PL. • The New PL is active according to the highest priority request saved in LS Output Control • The halfword of an addressed register the PL REG. • The Old PL is provided by the Old PL REG. is provided at the LS output (LS Sense bits) when the SA gate is active. • • New and Old PL are different when a trap request occurs (accepted by PL The SA gate is active from end of pulse REG) forcing a New PL until this A to end of pulse B when LS to TDR, New PL is set into Old PL REG. LS to FDR, LS to MAR or LS to SAR is active. • For details see fig. 4- 70 in the FEMDM. • During the different PL period two different LS zones are selected timed by the Old and New PL zone gates. LS ZONE SELECTION A trap request set into the PL REG forces a New PL according to its priority. When the • The LS zones are selected by the New PL is different to the Old PL (Old PL Select LS Y signals 0 - 7. REG). the unequal PL condition activates the Old PL Control and the New PL is transferred • The LS Addressing (LSA) check turns into the Old PL REG. on when none or more than one Select LS Y signal is active at the same time. Controlled by the LS New PL Zone gate and the LS Old PL Zone gate the Select LS Y • 2-58 The Select LS Y signals (Figure 4- 71, signals are generated depending on the New FEMDM 2020 CPU) are activated as or Old PL. Two different PL"S are present defined by : from setting the trap request into PL REG (T3) 1. the Old or New Program Level until the New PL is transferred into the Old (PL), PL REG (TI). During this period (T 3 to T 1) 2. Cycle Steal (CS) LS Select, or Select LS Y signals are generated depending 3. CE LS Select. on the Old PL. (5/68) IBM CONFIDENTIAL After the New PL has been transferred into when the CE display select switch is the Old PL REG (Tl), both PL's are the saIne set to OCU 2. until the New PL changes either by a higher The Reset PL REG signal forces PL REG priority request or by resetting the PL REG. latch 7 (highest priority) and resets the latches I to 6. The Reset PL REG signal PL REG is generated by the active ICPL reset latch, • The PL REG consists of 7 latches which is set when operating the ICPL key (1 to 7) and is reset by CTRL 10 after the loader card has been read. • The PL REG latches are nUInbered according to the request priority The Reset PL REG signal can be displayed (CE console, laInp 0) when the CE display • The PL REG latches can be set by trap requests and CTRL's /09/ to /OF /. It can only be reset by select switch is set to OCU 2 (also display PL REG). The laInp 0 is off when the signal is active (negative potential). CTRL's /01/ to /07/. • The Reset PL Reg signals occurs during ICPL and sets PL REG 7, New PL • while the latches 1 to 6 are reset. The PL REG consists of seven latches nUInbered froIn 1 to 7. 0-7. • These latches are /OF/ at ANew PL is specified by the turned on PL REG latch having the highest set at T3 either by trap requests 1 to 7 or by CTRL's /09/ to The New PL's are nUInbered £rOIn priority. T3, however, only when the corresponding • trap request line is inactive. The trap requests are reset during the service phases. These service phases New PL 0 (CPU PL) is operational if no PL REG latch is active. • MANOP's force New PL 7 without setting the PL Reg. end with a CTRL resetting the corresponding PL REG latch. The trap request line active at the service phase end indicates that the saIne trap request has been set again. Thus, the service phase starts again. The output of the PL REG feeds circuits, which allow, that only that trap request is active, which has the highest priority. The output of these circuits provide the New PL. Thus, the New PL (1 to 7) The contents of the PL REG are dis - agrees with the highest latch turned on placed on the CE console (laInps 1 to 7) in the PL REG. 2020 FETOM (5/68) 2-59 IBM CONFIDENTIAL Changing of Old PL Allow PL Switching • Trap request only wh~n is set into PL REG • Unequal New PL and Old PL moves the • Unequal PL condition turns on the Change PL New PL into the Old PL REG. the Sense Trap Request Line signal is active. latch which controls setting of the Old PL REG. • Sense Trap Request Lines occur when PL Switching is allowed (Figure 4-72, • New and Old PL are identical until the priority in PL REG changes either by a FEMDM 2020 CPU) higher priority request or by resetting the • current PL. Allow PL Switching defines the cycle at which changing of the PL does not influence the current basic operation. For details see figure 4-71 in the FEMDM. The trap requests provided by the active trap request bus lines are gated into the PL REG by the Sense Trap Request Lines signal. Alternating Use of Old and New PL This signal is active at T3 when the Allow PL Switching allows setting of PL REG and, conditioned by the new con- • PL depends upon the Old and New tents of PL REG, changing of the New PL. Since changing of the New PL immediately Alternating Use of the Old and New PL zone gate. • Alternating Use of both PL's allows influences the zone addressing (LS New PL completing the' old' Zone gate), Allow PL Switching defines the tion, while the 'new' instruction is moment at which the LS zone addressing can already initiated using the IAR of the be switched without affecting the current operation. New zone. Generally Allow PL Switching occurs during the last cycle of a basic operation, which is either cycle 3 or the cycle during which the corresponding End Op signal becomes affective. • micro-instruc- The functions which are already performed using the zone infor·mation of the New PL are: IAR to SAR (TS), IAR to MAR (T6), IAR to FDR (TI). For ALC operations Allow PL Switching occurs in the last cycle before performing the skip to repetition. The Old and New PL are alternating used to generate the Select LS Y signals controlled Allow PL Switching and Unequal PL set by the LS Old PL Zone gate and the LS New the Long Tin:e Clock to delta cycle ~ at T4. PL Zone gate. 2-60 (5/68) IBM CONFIDENTIAL According to the gate timing the Old PL is the present Old PL are used alternating used at T3, T4, T7, T8, T2, while the New during the four LOG cycles. PL is used at T5, T6 and T2. The LOG cycles a to 2 perform function without using the LS. The following functions are performed by using the New PL : During delta cycle 3 the IAR of the zone defined by the Old PL is read out at T7 (LS Old PL Zone gate), while the start address of the system reset routine ( /000/, forced by circuits) is set IAR to SAR at T 5 : into IAR of the zone specified by New PL. This function places the micro-instruction During LOG PL REG latch 7 is forced on address into SAR. Since the micro-instruction by Reset PL REG. The Reset PL REG sigread out as the next is already the first nal is generated by the ICPL Reset latch. instruction of the service phase, the IAR of This latch turns on by the Reset Pulse which the zone defined by New PL has to be used. occurs during CPU start, when the System Thus. at T 5 the LS New PL Zone gate is active. Reset key is operated. IAR to MAR at T 6 : Thus, the New PL 7 condition re.mains on, This function places the IAR into the MAR for even if MANOP drops at the end of LOG in. updating the micro-instruction address. Thus, the The System reset routine operates in PL 7. new zone has to be used. IAR to FDR at T 1 : Zone Selection for Cycle Stealing This function places the IAR of the new zone Caused by Any CS request and depending into FDR for branch type instructions. on the active CS Request latch (device I, 2, 3, or 4) two LS zones can be selected at CS LS Select time. Old/New PL during CPU LOG in The CS Request latch device 1 or 2 forces selection of zone 7 (Select LS Y 7), while the • CPU LOG in forces New PL 7 • Since Old PL REG is saved during LOG CS Request latch device 3 or 4 selects zone 1 (Select LS Y 1) Any CS Request is active from two different PL - s address LS zones i"" T3 to T2. The CS LS Select time lasts from TS to T2. depending upon the zone gates. CE Zone Selection During LOG,the MANOP signal forces New PL 7. The New PL 7 cannot be transferred • For LS Disalter the zone is selected by into Old PL REG since LOG prevents reset/ setting Data switch 1 to a value from set of Old PL REG. Thus, New PL 7 and ¢ to 7. 2020 FETOM (5/68) 2-61 • For LR or STR the instruction bits 9 to 11 Variable X-Addresses (R1-field) define the LS zone. • For MANOP LS Disalter the zone is selected Variable X-addresses are provided by the R1 or R2 field in the micro-instruction by setting Data switch 1 (Customer console) to a value ~ to 7. The value set up in the Data • switch 1 is placed into OPREG bits 9 to 11. These The R1 or R2 Select signal defines which field is used for addressing. bits feed the R1 Decode circuits. The R1 Decode signals ~ to 7 generate the corresponding Select LS Y signals. For LR and STR micro instructions the R1 field (bits 9 to 11) specifies the zone, LS register I of which is used as first operand. The value in the RI field forces the R1 Decode signals ~ to 7. The R1 Decode signals are used during cycle ~ either at T3 (LR) or at T8 (STR) to generate the corresponding Select LS Y signal. • If Rt (To-operand) is 7 (IAR addressed) LS WRITE is suppressed. According to the RI and R2 field of the mi.cro instruction placed in the op REG (TI cycleO) the RI and R2 Decode signals 0 to 7 are generated. cycle 0 These signals are active from T I (set instruction into op REG) to the next cycle 0, TI (change op REG by setting the next instruction). The RI Select and R2 Select signals (Fig. 4-73 and 4-74, FEMDM 2020 CPU) gen- LS REGISTER SELECTION erated at specified T-pulses depending upon the present micro-instruction (op Code), • The X-Addresses, which select any register in a specified LS zone, can be fixed or variable. define which decode signals (RI or R2) have to be used as X-addresses at which time. When the RI field specifies the LS register 7 (IAR, RI Decode 7) writing data into LS • X-Addresses are checked that not more or at T8 (store result) is prevented. less than one address is active at a time (LSA Check). Note: For LR and STR, RI Decode 7 do not prevent LS Write, since for these • 2-62 When none o~ more than one X-address instructions the RI field specifies a is active at the same time, the LSA zone. check latch turns on (indicator on CE allowed. console). specified in the R2 field. (5/68) For STR writing into IAR is The LS register 7 is then IBM CONFIDENTIAL Fixed X-Address 3 Fixed X-Addresses Fixed X-addresses (Figure 4-7.5, FEMDM 2020 CPU) are provided which select LS registers containing additional processing The LS register 3 contains the field length for CS operations forced by device 2 or 4 requests. informations (e. g. , field length). Fixed X-Address 4 Fixed X-Address ~ BST: Packed Decimal instructions with ALC: For these instructions LS register ~ contains the field length of the second operand. After BST, LS register 4 contains the address of the Main storage halfword into which the BST instruction address (IAR) incremented by 2 has been stored. MANOP's: For MANOP's LS register ~ contains the data ICPL: For ICPL LS register 4 contains the field address. length (defines the number of columns to be CS operations, request device 1 or 3: read from the loader card). During CS operations, forced by device 1 or 3 requests, LS register ~ contains the data address. No X-address 5 is forced by circuits. Fixed X-Address 1 Note: Fixed X address 1 for other than ALC or CS operations is a Fixed X-Address 5 'Don't Fixed X-Address 6 Care' function. For SENSE or CTRL with ALC LS register 6 contains the data address. All ALC instructions: LS register 1 contains either the field length Fixed A-Address 7 or the field length of the first operand (Packed Decimal). LS register 7 always contains the IAR. CS operations, request device 1 or 3: LS register 1 contains the field length for the CS operations. Fixed X-Address 2 LS WRITE The LS Write signal active allows setting of data provided by A LU or Modifier output or The LS register 2 contains the data address by the data bus input (sense data) into the for CS operation forced by device 2 or 4 requests. specified LS register (specified either by 2020 FETOM (5/68) 2-63 IBM CONFIDENTIAL variable or fixed addresses). The signal (Figure 4-76, FEMDM 2020 CPU) is generated either depending on the micro-instruction or forced by circuits (MANOP or CS). 2-64 (5/68) IBM CONFIDENTIAL MAR AND MODIFIER • Branching is performed unconditional (TRBS, TRBL, B) or conditional (BZ, BM, BP, BAC). The MAR and the associated circuits are shown • Branching is performed when the Branch Go latch turns on. in Figure 4-80, FEMDM 2fl2fl CPU. • MAR For conditional branch instructions, the halfword to be tested is set into MAR. The MAR is a halfword register. The 18 MAR latches are numbered P fl to 15. The MAR can At T3, during cycle fl, of the branch micro- only be set by data received from the LS . The instructions BZ (zero), BM (minus), BP (plus, MAR output is provided to the Modifier, the but not zero), BAC (address check) the contents test circuits, and the Address check circuits. of a specified Rl) LS register is placed into MAR. The MAR contents are displayed on the CE The MAR output feeds test circuits, the output console, when the CE Display Select switch is of which is gated by the corresponding mioro- set to MAR. instructions (OP REG Decode, OP REG bits). If the MAR contents match with the branch The MAR is not parity checked. condition the Set Branch Go signal is activated, which turns on the Branch Go latch at T4 (reset/ MAR Input Control set), cycle fl. The active Branch Go latch forces The LS Sense Bits P fl to 15, provided by the branching (Branch address to SAR and to IAR LS output from end of pulse A until end of pulse B at T5). (SA gate), are accepted by MAR at pulse B The Branch Go latch is turned on unconditionally (reset/set), when the LS to MAR signal is active. for B, TRBS and TRBL. The Branch Go latch I The LS to MAR signal can occur at T3, T5, T6 and T8. MAR setting at pulse B ensures that the LS is reset at T4 (reset/set) during cycle ~ of the next following micro-instruction. CS operations block Branch Go. Sense bits are stable at LS output (end of SA gate). Branch Go Test for 1:IAR zero • For branching the branch address (ALU For BZ the Set Branch Go signal is activated output) is set into IAR and SAR. if the MAR bits ~ to 15 are all zero. 2020 FETOM (5/68) 2-65 IBM CONFIDENTIAL Test for MAR minus Address Check Low~ /0000 / to /008 F / For BM, only the MAR bit ~ is investigated for being on, since this bit is the sign bit for a binary number placed in MAR. The protected area addresses are not directly accessible to the customer. Thus, addresses. programmed within the customer program cause an address check low if they are below /0090/. Test for MAR plus The address check low ciTcuit investigates For BP, MAR bit ~ is investigated for being off. However, in addition any other MAR bit must be on (not zero). decimal values). 4-80 in the Test for Address Check • the MAR bits 0 to 11 (three high order hexaFor details see figure FE~DM. For CS operation, MAR bits 0 to 13 zero forces the corresponding signal which is Address Check is caused either by addressing the protected area (/ ~~~~ / to / ~~8F / ) sent as Counter Zero interface signal to the CS devices (attachments). or by an address which exceeds the customer's Main storage area. Address and Halfword Boundary Check • Since the customer's storage area is variable in size, the 'address check circuits must be prepared by plugging jumpers • instructions, are checked for being in the according to the rented storage capac,ity. For CS operations, MAR bits 0-13 zero force the CS interface signal The operand addresses, used during micro- customer's area when the AC bit (bit 7) is on. • Either the Upper or Lower Address Check • Halfword operand addresses are unconditionally checked to be even (bit 15 off). • An odd halfword address turns on the Halfword • Any of the three check latches turned on Latch turns on. Counter zero. When an address is set into MAR; it can be checked, that it does not exceed the available customer's area (Address check high) :or specify the protected area (address Boundary Latch. check low). Address Che<:~ .. ~~~h.: Depending upon the avail'able cu~omer storage, the high order MAR bit o to 3 are investigated. See figure 4-80 in the FEMDM. 2-66 (5/68) forces Trap Request 2. • The three latches are sensed and reset by a SENSE /16/. IBM CONFIDENTIAL Besides checking an address, currently present During this routine a SENSE /16/ can be in a LS register, by a BAC micro-instruction used to decide which check caused the trap the addresses used within a micro-instruction request 2. are checked for validity when the AC bit (bit 7) in the micro-instruction is on. The check latches are reset either at T8 During halfword micro-instruction, like MVH, MVHS, AH, AHSC, SH. and SHSC, the used addresses are checked to be for halfword boundaries (even addresses, MAR during SENSE /16/ or when the CPU is stopped (not Process, end Storage Alter). For Storage Fill or Alter the High and Low address check latches are reset each time at T6 during delta cycle 1. 2, or 3. bit 15 off). The three check conditions. address check high . . low. and boundary check. turn on latches named accordingly. Setting of the latches is MODIFIER prevented when any CS request occurs or when Storage Use drops (addressing of not available storage positions. including control area). • The Modifier increments or decrements LS halfword by 1 or 2. Setting of the latches is timed by T6 during delta cycles 1, 2 and 3. Since during these • For parity checking the Modifier parity (PO, PI) is predicted. delta cycles operands are processed, only the operand addresses are checked. Note that the addresses are already placed into SAR at T5. The Modifier can increment or decrement data by one or two. The result returns to The upper or lower Address Check latch active LS register. forces Regen Halfword. Modifier unchanged (start address from This signal causes that During ICPL data pass the the halfword read out by the faulty address is re- Address switches in LS Reg 0 moves to generated. IAR, zone 7). During Storage Fill or Alter (not CE mode switch The Modifier output is parity checked. The on) the procedure allows the customer to display Modifier parity bits P the control area but not to alter any data in it. according to the parity in MAR. the function ~ and PI are predicted to be performed, and bit pattern in MAR. Any address check latch on forces trap request 2 (not affective during MANOP Storage Alter or Fill, Modifier Control PL 7 is forced). This allows servicing the address check by a special micro-program routine. • Increment by 1 and Decrement by 1 or 2 are control signals generated depending 2020 FETOM (5/68) 2-67 upon the operation to be performed. • The carry out of the Modifier halfword is defined as Increment or Decrement Carry ~. • Increment by 2 is· active when no other Increment or Decrement signal is generated. The Modifier is mounted on two si milar cards. One card contains the Modifier circuits for the loworder byte (P1 to 15), while the Modifier • During CS operations the Modifier is controlled circuits for the highorder byte (P by the CPU CS unit. on the second card. ~ to 7 ) are The carry information from the loworder byte The Modifier control circuits provide the Increment or Decrement by 1 or 2 signals (Figure 4-81, to the highorder byte is provided either by the Increment Carry 8 or Decrement Carry 8 signal. FEMDM 2~2~ CPU). The signals are generated depending upon the basic operation to be executed and are timed by delta cycles (T4 to T3) or half An overrun out of both bytes is indicated either by the Increment or Decrement Carry ~. delta cycles (T4 to T7 or T8 to T3). Increment The Carry 8 is a internal Modifier signal, while by 1 and Decrement by 1 or 2 are controlled the Carry ~ is used as CPU control signal. signals, while Increment by 2 is forced if no For details of the modifier circuits see fig. other Modifier control signal is active. Thus, 4-80 in the FEMDM. Increment by 2 is active generally. To move data through the Modifier unchanged , this Modifier Parity Correction common control signal is suppressed (no Increment or Decrement). During Cycle Stealing all four Increment and • MAR bits PO and PI predict the • The predicted parity is changed when Modifier parity. Decrement possibilities are controlled by the CS Modifier Control. The result is present at Modifier output only as long as the corres- a defined MAR bit pattern indicates ponding Increment or Decrement signal is that the Modifier operation changes active. the status (on to off, off to on) of an odd number of MAR bits. Modifier Circuits • The Modifier consists of two seperate Modifier Check circuits, able to process one byte. • • 2-68 Even parity in either the highorder or The low order byte provides a carry loworder Modifier byte turns on the (Increment or Decrement Carry 8) to the Modifier Check Latch (indicator on high order byte. CE console). (5/68) IBM CONFIDENTIAL The Modifier output is parity checked. An even number of bits (including parity bit) either in the highorder or loworder byte turns on the Modifier Check latch (indicator on the CE-console). 2020 FETOM (5/68) 2-69 IBM CONFIDENTIAL FDR data are fed through the Invert Switch LOGICAL UNIT before entering th~ ALU. The Invert Switch can be controlled, '. so that FDR data passes unchanged (True) or • The Logical Unit consists of FDR-Invert SWitch, TDR-Shift Unit. and ALU. inverted. If the True and Invert control signals are active at the same time the Invert Switch forces the FDR data to zero, while at a time. when both signals are absent, the output of the The ALU is able to perform logical as well as arithmetical operations using Invert Switch is fixed to ones. op~rands provided by FDR and TDR. The logical operations are ANDing. ORing and Exclusive ORing. ADDing is the only arithmetical function which FDR Set can be executed. Before the operands. provided by FDR or TDR • LS to FDR, ALU to FDR or I/O Bus to enter the ALU. they can be modified either by FD:R, selects the halfword which is set into the Invert Switch (FDR operands) or by the FDR. Shift and Suppress Unit (TDR operands). • FDR AND INVERT SWITCH ALU to FDR causes the Reset FDR signal (T6), while the other conditions reset/set the FDR. • FDR keeps one operand during ALU operations until the result is saved. • Retain FDR¢-7 causes that during TRBS or TRBL. cycle ¢. LS to FDR only se~ the loworder FDR byte. The highorder byte is • The Invert Switch provides FDR bits to the retained. ALU either true or inverted. • • For I/O Bus to FDR the Address Bus parity The Invert Switch can force zeros or bit (OP REG bit PI) directly sets the FDR bit ones. p¢ (Address Bus to FDR bits ¢-7). FUR 'and Invert Switch are shown in figure 4-9¢. FEMDM 2¢2¢ CPU. The FDR is a • Sense data of CPU SENSE /14/ or /15/ are one halfword in length. short time 'storing device, which save one operand during ALU operations. This operand • For CPU SENSEI s parity checking is is provided either by LS, ALU output (preceding inhibited since CPU sense data are result) or by sensed data from the I/O Bus. provided without parity bits. 2-70 (5/68) IBM CONFIDENTIAL LS to FDR signal is active, is set into FDR at T4 (cycle 0 or 1). Since CPU st:'nse data is LS to FDR signal generated at Tl, T3, T4, provided without parity the Prevent ALU and T7 depending upon basic operations allows and SU Check signal is generated. the LS Sense Bits PO to 15 to enter the FDR. For TRBS and TRBL, T3, cycle 0, the Retain FDR signal is activated. The active .FDH Parity correction Retain FDR signal prevents resetting of FDR bits PO to 7 and blocks the FDR input for the LS Sense Bits PO to 7. • To correct FDR parity bits for CPU sense data the signals Force or Turn off PI or Thus, only P~ the LS Sense Blts PI to 15 are placed into are generated by the ALU parity correction circuits. FDR while the FDR bits PO to 7 remain unchanged. • For parity correction the FDH bits 8-11 are moved to the Shift Unit (lNT SU bits 4-7) during TRBS. cycle ALU to FDR When thl' ALU to FDR gate is active, the ALU to FDR signal gates PO to 15 from ALU into FDR. The FDR was reset at T6 by the Reset FDR signal. ~. only. The FDH contains IS latches numbered P~ to 15. The latches are reset when new data shall be placed in (reset/set). The FDH contents are displayed , on the CE console when the CE Displav . Select switch is set to FDR. To proyide correct parity for CPU sense data the parity latches P0 and P I can be set or turned r/o Bus to FDR off controlled by the ALU Parit,v Correction circuits which generatt' the CPl: sense data The I/O Bus to FDR signal s<'ts the Sense parity when the PreH'nl ALl] :ll1d flU Check Bits 0 to 7 and PI to 15 into FDR. The condition exi s ts . 130th pa rity bits a re affected parity bit PO derives directly from tht' OP SillCt' CPU sense data m:JY be REG bit Pl. :1 haltword in length The bits 0 to 7 are prov ided by the Address Bus while the bits PI to 15 ForTHBS. CY 0. the FDR bits are the sensed data byte provided on the lrallsterred to the Shit! l;nit (lJecomes I1\:T SlJ Data Bus. iJits 4 to 7). Transferring these bits to the t\ to 11 are SU saves the parit~· infornwlion since the IJUs CPU sense data, which art' provided either are forced to icro when performing a CPU SENSE, an TCPL (THBS only). If an odd Ilurnj,er of hits is SENSE, or when the MANOP inbus to FDR forced to lero the FUn parity l.dt P J is wrong 1).\' the Invert Switch 2020 FETOM (5/68) 2-71 IBM CONFIDENTIAL for the Invert Switch output. This would also An active FDR Invert signal causes the cause wrong parity PI of the ALU result. However, corresponding FDR bits to be inverted at the saved parity information inSU can tell. that the Invert Switch output. either an even or odd number of bits has been forced to zero and a Change Parity (PI) signal Beside the true or invert function, the In- is generated accordingly within the ALU Parity vert Switch is able to force zeros or ones Correction circuits. at the output. Invert Switch To force zeros the FDR True and all three FDR InVert signals must be active at the • The Invert Switch is controlled by FDR same time. True or FDR Invert. It is possible to force either the FDR bits • FDR True affects the complete FDR half- o to word, while three FDR Invert signals only one of the three Invert signals is active. (¢ - 7. The other FDR bits remain unchanged. 8 - 11, 12 - 15) can affect bit 7, 8 to 11 , or 1 2 to 15 to zero when groups. The Invert Switch output is forced to ones • • True and Invert force the FDR bits to when both control signals (True and Invert) zeros (parity bits on). are absent at the same time. Not True and not Invert force ones (parity The Invert Switch Control provides the True bits on). and Invert signals generated depending on the basic operation in process. • Possible control combinations are: True and Force zeros or Invert and Force ones. The Invert Switch consists of AND-OR combi- Invert Switch Parity nations which are activated by the invert switch control signals 'FDR True' or 'FDR Invert' • (Figure 4-91, FEMDM 2¢2¢ CPU). When the Invert Switch functions are normally performed on byte boundaries. FDR True signal is active the FDR bits P¢ to 15 run through the Invert Switch and become • the Invert Switch bits P,Ill - 15 (Invert Switch output) unchanged True or Invert on byte format does not influence the parity. (true). For invert operations the FDR bits 0 to 7, • Forcing a byte to zeros or ones always results 8 to 11 and 12 to 15 can be selected by in even parity and. thus. the parity bit has to separate FDR Invert signals. be turned on. 2-72 (5/68) IBM CONFIDENTIAa. The Invert Switch functions are performed During cycle ¢ the bits 8 to 11 are forced to either on halfword or byte boundaries, zeros while the bits 12 to 15 as well as the except during TRBS when the bits bits ¢ to 7 are transferred true. 8 to 11 are forced to zero and the bits 12 to 15 are transferred true. Since the bits 8 to 11 are forced to zeros the parity of the loworder byte at the Invert Switch When a byte moves true (unchanged) through the output (Invert Switch bit P1) is undefined. The Invert Switch, the FDR parity becomes the Invert FDR bit P1 becomes Invert Switch bit P1 Switch parity. For FDR Invert on byte boundary the FDR parity also becomes Invert Switch parity since the number of turned on bits is not changed by inverting. The Invert Switch parity bits are used for ALU parity prediction. Thus, an information is needed which tells wether the Invert Switch bit P1 is correct or not. In case of incorrectness the P1 information must be changed to get When a byte is forced to zeros or ones, the correct ALU parity. corresponding parity bit is turned on at Invert Switch bit P1 is incorrect when the the Invert Switch output. However, during FDT bits 8 to 11 (forced to zeros) provide operation with Invert Parity mode (Invert an odd number of turned on bits. parity latch on) setting of the parity bit of During TRBS cycle ¢ the FDR bits 8 to 11 a byte forced to zeros or ones is inhibited are transferred to the INT SU bits 4 to 7. to provide even (incorrect) parity. The Shift Unit parity circuits generate the signal 'Odd SU Bits 4 to 7' if the number of turned on bits is odd. The active Odd SU Bits 4 to 7 signal causes changing of the TRBS - Invert Switch Parity • ALU parity P1 which is predicted depending upon the Invert Switch bit P1 (can be incorrect) Two different Invert Switch functions and the INT SU bit Plo in a byt e cau s e undefined parity. • The Invert Switch parity bits are used Invert Switch Display to predict the ALU parity bits and the prediction is corrected if an odd num- The Invert Switch output is displayed on ber of turned on bits (8 to 11) is forced the customer console in Data Register to zeros. (DR) display E (PO, T a to (PI, 8 to 11), and R 3), S (4 to 7), (11 to 15). TRBS is the only basic operation during which Invert Switch operations are not During TRBS the byte displayed in DR-T performed on byte boundaries. and R may show incorrect parity (PI), 2020 FETOM (5/68) 2-73 IBM CONFIDENTIAL since the change parity function (bits 8 The TDR can ·be entered from the SDR or to 11 forced to zeros) affects only the the LS always one halfword in length. parity of the ALU output (result). The TDR is. not parity checked. Eight Shift TDR AND SHIFT UNIT The TDR output directly feeds the eight TDR and Shift Unit (Figure 4.100, FEMDM 2020 CPU) represent the second input of the Logical Unit. The TDR is set by data which shift circuits. After the eight shift cir- cuits the bits are defined as Internal (INT) SU bits PO to 15. derives either from the LS or from the SDR. Four eight shift functions are possible: The TDR data enters the ALU via the Shift Unit (SU). The SU can shift TDR data by eight, four Cross Shift or two bits to left or to right. The SU can Eight Shift Left or Right also suppress (set to zero) the complete No Shift Halfword TDR halfword or selectable bit groups of No Shift Byte, the TDR halfword. The SU contains circuits to perform sign or packed byte testing and circuits which are The four shift functions are controlled by four eight shift control signals: able to normalize signs according to the No Shift - TDR 8-15 to SU 8.15 EBCDIC or ASCII standard. TDR 0 - 7 to SU 0.7 For CTRL' s, TDR data is provided to the Shift • TDR 0-7 to SU 8.15 (right shift by eight) Data Bus after the eight shift circuits. TDR 8.15 to SU 0.7 (left shift by eight) The Eight Shift output is parity checked TDR (SU Check). The TDR is a halfword register consisting of 18 latches numbered PO to 15. The TDR Cross Shift: contents is dis)?layed on the CE console Cross Shifting, exchange of highorder and when the CE Display Select switch is set loworder byte,' is performed when both shift to TDR. signals (TDR The TDR contents is changed only when new data i~ set (Reset/Set): 2-74 (5/68) ~-7 to SU 8-15, TDR 8-15 to BU 0-7) are active during the same cycle, IBM CONFIDENTIAL Eight Shift Right or Left: to provide odd parity. However, for inverted Only one shift signal, TDR ~-7 to SU 8-15 operations (Invert Parity Latch active) forcing or TDR 8-15 to SU ~-7 is active. The not of the parity bit is suppressed (even parity). affected INT SU bits (~ to 7 or 8 to 15) Incorrect parity (even) of the INT SU bits are set to zeros. (highorder or loworderbyte) activates the SU Check latch and the corresponding indicator No Shift Halfword: on the CE console turns on. The check is When the two No Shift signals, TDR ~-7 to inhibited during CPU Senses (Prevent ALU SU ~-7 and TDR 8-15 to SU 8-15, are active and SU Check). at the same time, the halfword in TDR is moved to the INT SU bits (P~ to 15) without Shift Unit shifting. • The internal (INT) SU bits, provided by No Shift Byte: the Eight Shift, can be shifted by 2 or 4 Only the No shift signal TDR 8-15 to SU bits to the left or to the right. 8-15 is active. The loworder byte in TDR (P1 to 15) is moved to the INT SU bits • Shift is performed on halfword basis. • The SU output bits can be suppressed P1 to 15. The highorder byte (INT SU bits P~ to 7) is set to zeros (TDR remains). in groups of 4 (highorder byte) or 2 (loworder byte) bit groups. No Shift Halfword and Cross Shift are the basic function of the Eight Shift circuits. No Shift Byte and Eight Shift Right or Left are sub-functions • Normalize Sign allows standardization of the packed decimal signs ( which are achieved by additionally controlling the IF I No Shift Halfword or Cross Shift control signals. IAI to valid) according to the required standard code (ASCII or EBCDIC). For details of shift control signal generation refer to figure 4-101 in the FEMDM. • The SU output is displayed in Data Register display P, I, U, and L. Eight Shift Parity The internal (INT) SU bits (PO to 15) provided by the Eight Shift circuits are used Eight Shift functions do not affect the parity. as input data for the Shift Unit (SU). Thus, the TDR parity bits are transferred Data is fed through the SU either shifted with the corresponding byte and become the by 2 or 4 bits to the left or to the right, or INT SU parity bits. unshifted. The parity bit of a byte set to zero by not Bits shifted out of the halfword are lost, No Shift and not Shift is forced on by circuits while the additional bits are set to zeros. Data is shifted on halfword basis. 2020 FETOM (5/68) 2-75 IBM CONFIDENTIAl. The output of the SU provides data to one ALU entry. for SLM, SRM, or MVHS (1, 2, 3). The output of the SU can be suppressed (set to zero) either partially For SLM and SRM, the shift which shall be or completeiy controlled by the Suppress performed is specified in the micro.instruc. circuits. tion bits 5, 6, and 7 (OP REG bits 5, 6, or Also circuits are provided to standardize signs to test for correct sign 7). Bit 5 on activates the Eight Shift control. bit pattern and to test for packed decimal data. The output of the SU is Details of shift control signal generation constantly displayed in the Data Register are shown in fig. 4.101 in the FEMDM. display (Customer console) E (P~ to 3), S (4 to 7), T (PI to 11), and R (12 to 15). For example the MVHS 1 causes generation of the Shift Right by 4 signal during cycle 2. Shift by 2 or 4 No Shift Control for ADDI • Shift by 2 or 4 is performed during SLM, SRM and MVHS only. • Suppressing the No Shift 0.7 signal causes forcing of ones into the high. • order SU byte. A shift by any amount of bits to the left has the effect that the respective binary • The highorder SU byte forced to ones high order bits are lost and an equal number allows extension of a negative imme. of free binary low order bit positions are created. diate data byte to a negative binary These low order positions are set to zero. halfword number. A reverse situation occurs with the right shift. • A positive immediate data byte causes suppressing of the highorder byte set Shifting by 2 or 4 bits left or right is performed to ones. by AND switch combinations which are activated by one of the four shift control signals (Figure 4-1~1, FEMDM 2~2~ CPU): For ADD! the control signal 'No Shift ~ to Tis suppressed. Since also no Shift by Shift Left by 2 Shift Left by 4 2 or 4 signal is active during ADDI no control signal affects the bits ¢ to 7. This condition Shift Right by 2 Shift Right by 4 forces turning on the bits ¢ to 7 (hexadecimal IFF/). Only one of these signals is active at a time. The SU bits ~ to 7 (highorder byte) forced However, the shift by 2 or 4 can be com. to ones extend the immediate data byte (lowbined with shift by 8, since Eight Shift and order) to a negative binary number one halfSU operate independently. word in length (IFF .. I)'L Since for ADD! the The shift control signals are only generated 2-76 (5/68) highorder byte in SU is -generally forced to IBM CONFIDENTIAL ones the suppress circuits are controlled IDI is accepted as a negative sign. according to the sign bit (OP REG bitS) of the immediate data byte. Sign bit off. indicating Standard Sign + a positive binary value, causes suppressing - of SU bits 10 to 7. Since suppressed bits are set to zeros the immediate data byte is extended EBCDIC: Standard Sign = ASCII: + by zeros which is true for a positive binary - = number. Ici (111010) IDI (11101) I AI (1010) IBI (11011) Sign bit on. indicating a negative binary value, The three highorder bits of a standardized allows that the bits 10 to 7 (forced to ones) sign are similar for minus or plus. Thus, are provided to the ALU. The immediate for standardization the three highorder bits data byte extended by ones (IFF I) represents (SU bits 12, 13, 14) can be forced directly a negative binary number one halfword in depending upon the selected standard code length. Addition of a negative value is similar (EBCDIC = to a subtraction. selected code is defined by the ASCII latch 1110. ; ASCII = 101.). The turned on (ASCII) or off (EBCDIC). See Normalize Sign • figure 4-100 in the FEMDM. During SDS the packed decimal sign (/AI to IF I) provided by bits 12 to 15 The 10worder bit (SU bit 15) has to be turned on or off to define a negative or of the loworder INT SU byte is standardized positive sign. according to the selected code (ASCII or The turning on or off of the loworder sign EBCDIC). bit is controlled by the Normalize Sign Bit 15 signal, which is active (negative) when the sign is negative. The NorITIalize Sign circuits are used to convert a packed deciITIal sign provided by the INT SU bits 12 to 15 into the standard sign Since all sign representations have the bit 12 turned on, only the bits 13 to 15 have to be investigated to define the sign polarity. according to the selected code (EBCDIC or The Normalize Sign Bit 15 signal is active ASCII). when INT SU bit 15 is present and either the bit 14 (/DI, 11(01) or the bit 13 (/B/, The ciTcuits are active 1(011) during the SDS micro-instruction (Normalize characteristics of both negative signs, Sign signal). Within the CPU the hexadecimal and values IAI The values considered IF I are accepted as valid signs. IA/, Icl, lEI and IFI are as positive signs, while IBI or to is off. This condition defines the IDI, IBI only. The bit patterns of the positive signs cannot activate the Normalize Sign Bit 15 signal and, thus, SU bit 15 is set to zero for standardized positive signs. 2020 FETOM (5/68) 2-77 IBM CONFIDENTIAL Normalizing Signs does not affect 'the parity Test Sign (number of turned on bits in the loworder byte) lEI,. with the only exception: Normalizing sign Normalizing the sign lEI During SDS the TNT SU, bits 12 to 15 are tested for representing a sign (/AI to (three turned on bits. 111¢) to the positive standard sign or • IAI • Ici (two turned on bits, 1¢1¢ or 11¢¢) An invalid sign (/¢/ to 191) IF I). forces trap request 2 by turning on the Data Error latch, causes parity changing (PI) in the ALU parity correction circuits. • The Data Error Latch is sensed and reset by a CPU SENSE 116/. Note that Normalize Sign forces the SU bits 12 to 15 to ones by preventing the No Shift During SDS (cycle ¢ if DD type, cycle 1 . functions (No Shift 8-15 signal active) for if DX type) the TNT SU Bits 12 to 15 are these bits. The turned on bits 13 to 15 are tested for representing a valid sign (any proVided to AND switches which are controlled hexadecimal value from by the Normalize Sign circuits while the turned on bits 12 (common for all signs) directly I AI An invalid sign (any value to /F I). I¢I to 19/) prevents activating the signal Bits 12-15 Sign A to F. becomes SU bit 12. This signal inactive during cycle ¢ or cycle 1 if the SDS instruction is in process turns on Suppress the Data Error latch at T 6 (delta cycle 1 or 2 overlaps with cycle ¢ or 1). The SU output can be suppressed in groups of The active Data Error latch forces a trap 4 .or 2 bits. request 2. Trap request 2 forces a circuit These groups are: controlled branch (change of LS zone addressing) SU Bits ¢ 1 2 3 to a micro-program routine. During this 456 7 1161 routine a SENSE 8 9 10 11 investigates for the trap request cause. The active Data Error 12 13 14 15 latch sets the bit 11 in the sensed byte. During the SENSE Thus. six suppress signals are available, named according to the bit groups affected (eg. Suppress 4-7, Suppress 12-13 and so on), Suppressed 1161 the Data Error latch is reset at T8. Beside SENSE /16/ the Data Error latch can be reset by stopping the CPU (Process drops) . bits (groups) are forced to zeros. The six suppress signals are provided by the Test Packed Byte Suppress Control (Figure 4-1¢1, FEMDM 2¢2¢ CPU). They are generated depending on the During packed decimal operations (AP, SP, basic operation to be executed and correspond ZAP, PPC) the two packed decimal digits with the cycle periods (Tl to TS). provided in the loworder byte (INT SU bits 2-78 (5/68) IBM CONFIDENTIAL 8 to 11 and 12 to 15) are investigated to be valid (hexadecimal values IrJI to 19/). If the SU shift or suppress functions affect only data bits (rJ to 7, 8 to 15). The SU parity is two digits are valid the signals Bits 8 to 11 predicted in the ALU parity correction circuits Sign A - F and Bits 12 to 15 Sign A - F depending on the executed function (Shift Suppress). are inactive. The SU parity is used for SU display (DR - E, When one of these signals is active during S, T. R) and to determine the ALU parity. cycle rJ (DX or XX type), cycle 1 (DD or XD Remember the general parity rule: type), or cycle 2 the Data Error latch turns Changing the status (on to off, off to on) of on and forces a trap request 2. an odd number of bits in a byte requires changing the parity bit. Data Bus Output The status of bits can be changed in the SU either by shifting or by suppressing. For During a CTRL instruction the INT SU bits P1 to 15, which derive either from TDR Normalize Sign operations only) standardizing the sign lEI affects the parity (P1). highorder byte (after shift by 8) or from the TDR loworder byte (No shift) are provided to the Data Bus (P1 to 15). The Data Bus provides the CTRL data to the attachments, channels or control features. Note that the INT SU bits P1 to 15 are provided to the Data Bus as long as the CTRL instruction is The INT SU bits prJ to 7 and P1 to 15 (Eight Shift result) are parity checked to ensure correct SU input parity. If the INT SU bits are of correct parity the signals Shift Unit rJ - 7 odd parity and Shift Unit 8 - 15 odd parity are active (negative). placed in the OP REG. (T1, cycle rJ until T1, Incorrect (even) parity of any INT SU bytes cycle rJ of the next micro-instruction) . turns on the SU Check latch except for CPU SENSE instructions, MANOP's, or Shift Unit Parity • ICFL SENSES. To ensure correct SU input parity the TNT SU bits PrJ to 15 are checked (SU check) The SU Check latch on causes stopping the CPU one cycle after the cycle in which the check occured. The active SU Check latch • Shift by 2 or 4 and Suppress require changing of the input parity when an odd number of illuminates the SU Check indicator on the CE console. turned on bits in the highorder or loworder During TRBS, cycle 0, the signal which byte are affected. indicates correct parity for the highorder • Standardizing Sign lEI (plus) always changes the parity of the loworder byte. byte (~ to 7) is forced to prevent SU check caused by the transferred FDR bits 8 to 11 2020 FETOM (5/68) 2-79 • (forced to zeros by Invert Switch) which are only needed to correct the Invert Switch parity Pl. ALU Carry bit 8 indicates a carry for byte operations, while AL U carry bit 0 indicates a carry for binary halfword The XOR-Iogic combinations which provide the operations. SU check signals (Shift Unit ~ - 7 or 8 - 15 odd parity) also provide signals which define • the number of turned on bits of specified bit An ALU carry turns on the Carry and AUX Carry latch. groups. These signals are: • AUX Carry Latch on causes Additional Carry into the unit bit cell (15) during highorder INT SU byte Odd Odd Odd Odd SU SU SU SU _-3 Bits Bits 4-7 Bits 6-7 Bits _-3 x loworder INT SU byte Odd Odd Odd Odd SU SU SU SU Bits 8-11 Bits 12-15 Bits 8- 9 Bits 4- 7 x • Odd SU Bits is fed back to theUliti position of the 8-7 x or A carry out of the high order or loworder byte during logical operations or 12-15 or 8-11 Odd SU Bits ~-1 x or ~8- 9 the next Add operation. corresponding byte for parity correc- 14-15 tion,s only. This signals are used according to a shift by 2 or 4 or a suppress function to decide • During arithmetic or logical oper- ations a odd number of carries out of wether the parity must be changed (odd number the bit positions within a byte changes of turned on bits affected) or not (even numbet the parity predicted by the SU and In- of turned on bits affected). vert Switch parity. • ARITHMETIC - LOGIC UNIT The ALU output (Sum bits) is parity checked to ensure correct ALU operations. • The ALU performs ADD, AND, OR, or XOR using the SU and invert Switch halfwords. • Depending upon the ALU result the signals ALU Zero or ALU Not Zero turn • on. XOR is the basic operation the ALU is prepared for if no Adder, AND, or OR gate is active. ;. • For binary, logical and packed decimal instructions the four condition code latches are set according to the ALU The ALU consists of 16 ALU cells ! ..which perform the ALU operations for one bit position. 2-80 (5/68) result condition. The Arithmetic-Logic Unit (ALU) can execute four different functions using the half-' 11M CONFIDENTIAL word operands provided by the SU output output of a c ell to the carry input of the and the Invert Switch output. next highorder cell. The four functions are: Adding (Add) Take into consideration that an ALU cell ANDing (AND) can provide a carry also during AND, OR, or ~Ring (OR) Exclusive ~Ring (XOR) XOR, however since the Adder gate is inactive the next cell does not accept this carry. The function to be performed is defined The carries out of a byte or an halfword by a control gate generated in the ALU are provided by the carry output control circuits. cell 8 or ALU cell 0 respectively. These of ALU carries are defined as ALU Carry bits 8 Only three gates, Adder gate, AND gate, or O. ALU Carry bit 8 is used during packed and OR gate, are generated depending upon decimal instructions (AP, SP, the basic operations to be executed. Ex- while ALU Carry bit 0 is used during binary clusive ~Ring is performed when no gate ZAP, PPC), halfword instructions (AHSC, SHSC). is active (general condition). The gates are The ALU Carry bit 8 and 12 are used to timed by cycle periods (Tl to T8). control six correct functions, which are Basically the ALU consists of 16 similar circuits named ALU Cells 0 to 15. Since the ALU cells operate similar it is only necessary to understand the function of one of them. An ,ALU cell performs the same functions (Add, AND, OR, XOR) as the complete ALU does, but on bit basis. The three inputs of cell are: SU bit Invert Switch bit Carry necessary to correct hexadecimal values (/A/ to /F /) during packed decimal operations to obtain valid packed decimal values (/0/ to /9/). The carry input of the ALU Cell 15 is activated by the Additional Carry. The Additional Carry' occurs as complement correction (inverted data plus one) during the subtract operations of SH or CLC (Inject one to ALU) or caused by the active AUXiliary Carry latch. The AUX Carry latch turns on at T2 (Reset/Set) during cycle 0 or 1 when the Carry latch has been The two outputs of a cell are: Sum bit Carry turned on either by ALU Carry 8 or 0 during the previous instruction or operation (repetitions if ALC). The ALU Cell operating principles for Add, AND, OR and XOR are shown in figure During the logical operations (AND, OR, 4_111, 2020 CPU FEMDM. XOR ; Adder gate inactive), the Additional The ALU cells are chained to process half_ Carry as well as the Carry into Position words or bytes by connecting the carry 7 are activated by feeding back the carries 2020 FETOM (5/68) 2-81 IBM CONFIDENTIAL (ALU Carry 8 or 0) to the unit position of active ALU Check latch illuminates the the loworder or highorder byte. Since the ALU Check indicator on the CE console and Adder gate is inactive, the feed back carries stops the CPU after the next cycle. do not influence the result (Sum bits) but During CPU SENSES (provide SENSE data they are necessary for par.ity correction without parity) the Prevent ALU and SU during logical operations. Check signal is active. This- signal blocks During the binary arithmetic instructions the parity bit!!! provided by the correction (AH, AHSC, SH, SHSC), the carry into circuits and allows generation of the ALU the sign position (ALU Carry bit 1) are bits PO and PI depending upon the Sum used to recognize a Bits Even signals only. Thus, the ALU Binary Overflow. A Binary Overflow activates Condition Code operations are not checked, since the (CC) latch 3. parity is generated depending upon the The parity bits PO and Pl of the ALU result result and the parity is correct even if the bytes (Sum bits a to 7 and 8 to 15) are pre- ALU as well as the SU and Invert Switch dicted according to the Invert Switch (display circuits function erroneously. The parity I, P, U, L) and SU parity (display E, S, bits of the SENSE data in FDR are correc- T, R ; INT SU parity changed according ted retroactive depending on the generated to the performed SU functions). parity bits at the ALU output. Corrections The predicted ALU parity is changed when are performed by either the signals Force the signals Change Parity Sum Bits 9 to FDR bit PO or PI or the signals Turn off 15 or 1 to 7 are active. The signals are FDR bit PO or PI active. activated if any ALU operation changes The complete ALU result is displayed on the status of an odd number of bits in one the CE console when the CE Display Select of the ALU bytes. The status change in- switch is set to ALU. formation is provided by the carry output Depending upon the present ALU result of the ALU cells. Thus, the carry outputs the ALU Zero or ALU Not Zero signal is are connected to a XOR combination generated. (one for each byte), the output of which The halfword at ALU output is provided provide the Change parity signal if the to the input of SAR LS, FDR, and Inhibit. status changes are odd. The Condition Code latches (CC latches At the ALU output the signals Sum Bits a to 3) are set according to the result con- a to 7 Even and Sum Bits 8 to 15 Even are dition either unconditional (AP, SP, activated depending upon the number of PPC) or controlled by the CC bit (OPREG turned on bits in the highorder or loworder bit 6) in the micro instruction. result byte. The Sum Bits Even signals (AH, AHSC, SH, SHSC, AND, OR, XOR, are compared with the corresponding cor- CLC). rected parity bits and the ALU Check latch The condition code is accessible by a SENSE in- turns on if even parity is recognized. The struction. 2-82 (5/68) ZAP, IBM CONFIDENlfAL the input bit, the Ioworder bits (15 and 11) Six Correction Circuits are not affected by the Six Correction. • • Six Correction effects only the two four- A performed six correction influences the bit digits of the loworder ALU result parity of the Ioworder ALU byte (Change byte. Parity Sum Bits 9 to 15). Six Correction can be considered as a binary adder which adds the constant '- 6' to the digit to be corrected. ALU Parity Prediction and Correction • • Six Correction influences the ALU The ALU result parity is predicted depending upon the parity of both parity correction. ALU input operands. The Six Correction Circuits are activated for packed decimal instructions (AP, SP, ZAP, • a change of the predicted parity. pPC) only if the Adder gate is active (cycle 2 or 3). the number of turned on bits odd, force PPC), however, for the subtract- type instructions (SP, ALU operations which change The ALU operations ADD, AND, OR, or XOR affect the data bits 0 to 7 ( highorder The Six Correction affects the two halfbytes of the loworder ALU byte. E.ach hali byte is corrected by a separate circuit. ber of turned on data bits in both ALU result bytes (Sum bits 0 to 7 and 8 to 15) can be even or odd. Thus, the Sum bits PO and The Six Correction circuit can be considered as a four bit binary adder which adds the constant byte) and 8 to 15 (Ioworder byte). The num- '-6' to the ALU result (two hexa- decimal digits of the loworder byte). Six Correction is performed when no carry occurs out of the highorder bit of the corresponding halfbyte (No ALU Carry bit 12 or 8). PI must be turned on or off to provide always odd byte parity (odd number of turned on Sum bits including parity bit). The ALU result bytes are tested for proper parity. Even parity in the highorder or Ioworder byte turns on the ALU Check latch and the CPU stops (Process Check). To allow testing of ALU operations the Sum parity bits PO and PI are predicted. The constant' -6' expressed as a half byte That means. the parity result is generated accor- binary number is 1010. This binary number ding to the parity of the ALU input operands and is added to the halfbyte value repre- predetermines the odd or even number of turned sented by Sum Bits 12 to 15 or 8 to 11. on data bits in the highorder or loworder result Since the Ioworder bit of the constant is byte. zero and adding of zero does not influence The predicted Sum parity bits are correct 2020 FETOM (5/68) 2-83 IBM CONFIOENTIAL when all turned on bits of the input operands ever, adding the two turned on bits causes occur in the ALU result. a zero in the corresponding result position. Example: A carry, which can be assumed as one 1 1 1 1 0 0 0 0 Operand 1 o0 0 0 turned on bit, occurs and turns on the bit 1 1 1 1 Operand 2 in the next higher position. One turned on 1 1 1 1 1 1 1 1 Result if ADD input bit (odd number) has been lost and Each operand provides four turned on data the predicted parity bit (on) has to be changed bits. To provide odd operand parity) both (off). parity bits must be on .. The parity bit on During Adding a carry provided to an ALU indicates an even number (four of turned cell indicates the one input bit has been on data bits in the corresponding byte. lost. The predicted parity bit must be The total number of turned on bits of both changed when an odd number of bit carries operand bytes (even or odd) is specified occurs. in Table 2-1: AND 00000100 Since the Sum parity is predicted upon the total number of input data bits, the predic- 01010100 Result 00000100 tion has to be changed (corrected) when an The total number of turned on input bits odd number of turned on data bits is lost caused by the executed ALU function (Add, is even (odd plus odd). The predicted parity bit is on. However, an odd number of turned AND, OR, XOR) input bits is lost (three) and the predicted parity bit has to be changed. Examples: ADD Result o0 o0 0 0 000 1 o0 0 0 001 0 OR 0 0 000 1 01010100 00000100 Result 01010100 The total number of input data bits is two The predicted parity bit is on (even num- (even) ; thus, the predicted parity bit has ber of input bits). One of the opposite turned been turned on to provide odd parity. How- on bits is lost (odd number). The predicted Table 2-1 Turned On Bits of Even and Odd Operand Bytes Operand 1 Operand 2 Total of turned on data bits P=1 (even) P= 1 (even) Even (even plus even = even) P=O (odd) P=O (odd) Even (odd plus odd = even) P=l (even) P=O (odd) Odd (even plus odd = odd) P=O (odd) P=l (even) Odd (odd plus even = odd) • , 2-84 (S/68) IBM CONFIDENTIAL parity bit has to be changed. XOR to activate the carry output (input of the 100 1 100 1 next cell) even for the logical ALU func- 000 0 100 1 tions (AND, OR), when bits ar e lost. A logical carry is not accepted by the next 100 1 000 0 Result ALU cell The predicted parity bit is on (even num_ For XORing no carry is generated since ber of turned on input bits). this function always affects an even number No change of the predicted parity is re- of turned on bits and no correction of the quired since four (even) bits are lost. predicted parity bits is necessary. No.te that for XOR the predicted parity is Figure 2-J,9 always correct since XOR operations affect of the four possible ALU functions. only even numbers of turned on input bits. The predicted parity bit must be corrected During Add operations changing of the total when an odd number of bit carries occur number of input bits is indicated by a carry within a byte. To detect an odd number of into the next higher ALU cell. Note that carries the eight carry inputs within an a carry into the unit position (cell 15 or 7) ALU byte are connected to a XOR com- of one of the ALU bytes (Additional Carry, b ination. Carry into Position 7) also affects the num_ The XOR combination provides the Change ber of turned on bits of the corresponding Parity signal (Change Parity Sum Bits 9 byte. The ALU cell circuitsare designed to 15, Change Parity Sum Bits 1 to 7). ALL/ Cell .sU e; t. ¢ ~ J. J. .I. I ! ¢ J. -- ¢ ¢ t- :", :> ... l .. vert5we~t ~ shows the carry conditions (~lrl'~ V V / ~ J.. ---. AD]) AN]) OR. 'x'o~ -- -- -- -- CA~P.Y -- -- C~RR"" -- -- --CARR'f 1------- ----- ¢ .J. .L CARRY 1.. tP .L CARfly J.. l .1. CA I<~)' CA~Qy CA~~'t ._--_._-_ _._-._'-Note: : A QH.'J -- .. HnC\+ always :\lJol;CC\!es OVlC ;l/lpuJ bit- h.J.~Vle.4 0'-1 hQS ioeeV) Los/-, 2020 FETOM (5/68) 2-85 IBM CONFIDENTIAL Note that for logical ALU functions (AND, Change Parity XOR combination of the OR) the carries out of the highorder ALU loworder ALU byte. cell of each byte are fed back to the unit positions. This feed back is necessary to recognize the carries of all eight cells for parity correction. Condition Code Latches Correction of the Predicted Parity if Six • The Condition Code Latches are set to reflect the ALU result conditions. Correction Six Correction is required for packed de-' cimaloperations. The constant 1-6 1 • (1010) For binary and logical micro-instruction, the condition code is set when the CC bit in the instruction is on. is added to the ALU result. Six Correction affects only the two four bit (hexadecimal) digits in the loworder byte (8 to 11 and 12 • The condition code is set uncondition- to IS). ally for packed decimal micro-in- Correction of the predicted parity bit (PI) structions. is necessary when the six correction changes the number of turned on Sum bits uneven. The total number of turned on Sum bits is changed from odd to even or even to odd only when adding the constant 1010 (-6) to the hexadecimal values /2/, /3/, /A/ and /B/. Adding the constant 1010 affects only the three highorder bits of the hexadecimal digit since the loworder bit of the constant is zero. Thus, six correction can be considered as an addition of three bit digits (constant 101). The three highorder bits of /2/ and /3/ are 001, while the three highorder bits of The Condition Code (CC) latches are shown in figure 4-113 , 2020 CPU FEMDM. The CC Latches are set during Binary, Logical and Packed Decimal micro-instructions (CC-instructions) according to the final operation result (ALU result). The saved result condition can be tested by SENSE /10/. A turned on CC latch (0 to 3) turns on the corresponding bit (8 to 11) in the sensed data byte set into FDR. Beside CC-instruction the CC latches are set by CTRL /10/ controlled by the INT SU bits 12 to 15 turned on. /A/ and /B/ are 101. Both three bit digits show the bit combi- Set CC and Carry nation identifies the only hexadecimal The Set CC and Carry signal, active for digits which cause an odd change of the cycle 2, cycle 3, or delta cycle 0, is number of turned on Sum bits when adding generated according to the type of the CC- the constant. Thus, a signal is generated instruction (DD, DK, XD, XX) and speci- depending upon 01, which influences the fies the cycle (delta cycle) during which the 2-86 (5/68) IBM CONFIDENTIAL final result is present at ALU output. the CC bit (bit 6) in the instruction is on (I). Set CC and Carry and Allow CC Setting Allow CC Setting (Latch) active enable turning on the CC The second condition, necessary to activate latches at delta T8 (reset/set). the CC latches, is the Allow CC Setting Allow CC Setting is prevented for CC- Latch turned on. This latch is set at T7 instructions with ALC when the final con- (reset at every T6) either for packed de- dition is saved in the CC Latches (e. g. , cimal micro-instructions (AP, SP, AP, ALC, result not zero; CCI active) ZAP, PPC) or for binary or logical instructions while the ALC operation is still not term- (AH, AHSC, SH, SHSC, AND, inated (field length not decreased below OR, XOR, CLC) but for the last instructions only if zero). 2020 FETOM (5/68) 2-87 IBM CONFIDENTIAL I/O BUS OUT AND IN as an additional attachment in respect to the bus termination. • The I/O Bus connects the CPU with all present attachments. I/O BUS OUT A comprehensive representation of all bus The I/O control units are attached to the lines leaving CPU is given in figure 2-1~ CPU by bus lines. The following sections describe the I/O The cycle steal control lines, and the bus Bus output control shown in the FEMDM, lines are the only way to send or receive 2020 CPU, Figure 4-120. This figure shows informations from the I/O control units. the Address and Data Bus control as well as the generation of the control strobes for The bus lines can be divided into three ca- SENSE and CTRL functions. The other tegories : control Lines leaving CPU are shown in 1. Address Bus the circuits where they are generated. 2. Data Bus 3. Control bus lines There are two types of bus lines specified Address Bus Out by the bus termination in the attachments. Bus lines terminated by a line sense ampli- • Address for CTRL or SENSE. fier (LSA) are defined as type A. Bus lines type A are used to provide CPU information to the attachments with a minimum of delay The Address Bus provides the Device • A Device Address can be applied from the micro-instruction or from switches. time. This bus type cannot use the sent informations from the attachments to the CPU (e. g., Address Bus). Type B bus lines are those which accept • For I/O Display the Device Address is set up in the CE Select switches 1 and 2. informations either in the attachments or The Address Bus, consisting of eight single in the CPU (e. g. , Data Bus). These type bus lines (bits 8 to 15), provides the Device B bus lines are terminated by an Inverter- Addresses to the attachments for SENSE OR-Inverter Logic which allows activating and CTRL. of the bus lines even in the attachments. A device address consists of two hexadecimal Since the Inverter - OR - Invert Logics digits (one byte, eight bits) which are pro- of all attachments are connected in series vided either by the device address field in the bus signal is delayed. a SENSE or CTRL micro-instruction (OP The CPU (I/O bus entry) can be considered REG bits 8 to 15) or, especially during 2-88 (5/68) I A D])R E5S Bu ~ (b'lts 8 -1';» SENSE Strobe. SENSE Co~trol S~robe C.fRl strobe:: Sell)," e. Reser I I/O Clock 'Pulses 1. Q\Ild .t DATA BuS >I Two di«e.-e1lC\ blol.$ te....... ; I )I lSA >I ..-- LSA r r--- L5A ~--------------~> (bits PI-is) II" Reser (ond; h'oV\ .5fec,ol Reset COVldih'o,,", Power OVi Reset Process Fl UVtco",di~io\llQI Pl'"ocess Heter OR I I I/O Check ReS'e t- Ch::c:;:.k Stof I I L-alNip fest Sw:tcl., TherIoMa I Sw;tc"'l 3: n o z ::!! ~O--,R ~ o m Z Reh...... S to cp.... ~l--_ _ _ _ _... y I - ;""o"cqted ~~~:~:-:~~:;r 0:1 -t l> r- co",d iho~ t- -- - - cQ .... loec""'slcle r cdQ..S two ~~~~~~~_ _ _ _ _ _ _ _~~~~~~~~~~~~~~~~~~ _ _ ~-~-----~~~~UW1~st6~~ikd~Q~rs. > L.-~~::.:.I.:::oc.:.:k~F:.li:e==e:!::::d~C=h:..!l~=k~_ _ _ _ CPL.l N o o N "':i ~ N. I ~ S;3"'0.1 L;", e to Cll.Y'q I/o 4 AH"Q.c.~"",-el.4tJ F.·~\4re ~ -:t, COIN\IMOIII o"'l~ I, IBM CONFIDENTIAL ICPL, by the values set up in the Data Bus signal is active. This signal is acti- switches land 2 on the customer console vated when either a SENSE or CTRL micro- (also placed into OP REG 8 to 15). instruction (OP R Decode E or F) is placed If no SENSE/CTRL and no ICPL operation in the OP REG or when the IC PL Latch is is being processed the Address Bus is turned on during Initial Control Program activated according to the values set up Load.Note that for ICPL the device address in the CE Select switches 1 and 2. has to be /20/ and the Data switches must The device address, consisting of an high- be set up accordingly. order and loworder hexadecimal digit can be interpreted as follows: I/O Display Address Out The highorder digit (8 to 11) defines the The contents of CE Select switches 1 and called attachment. Since the number of 2 are used as Device Address (gated to the possible attachments is limited, only the bus) when the I/O Display Address Out values /0/ to /A/ are valid. signal is active. The I/O Display Address The loworder digit (12 to 15) can vary bet_ Out signal is active during T4 to T7 when ween /0/ and /F/ without changing the high- no SENSE or CTRL function is required order digit. Thus, it can be said, that each (no OP REG to Address Bus signal active). highorder digit (attachment) address can Note that this signal is active even if the be extended by 16 sub-addresses. CPU has been stopped and allows the CE However, each of the 16 addresses (device to display (CE console) I/O sense inform- addresses) relating to one attachment allow ation by selecting any required device address controlling or sensing .of eight different using the CE Select switches 1 and 2. functions or conditions in the specified Depending upon the timing signal T4 to attachment (highorder digit) by means of the T7, the signals I/O Display Address Out eight Data Bus bits. Thus, each attachment and OP REG to Address Bus are generated address (highorder digit) provides the possi- alternating. bility to test (SENSE) or to control (CTRL) address which derives from the OP REG bit 128 (16 times 8) different attachment func- 8 to 15 is ;neffective since the I/O display tions. functions are timed by T4 to T7 only. . . . . . . .Ie!*. The undefined The as signment of the pos sible highorder digits in relation to the attachments is given in figu;re 2 - Data Bus Out ,,£. • During CTRL operations the Data Bus carries the control bits. OP REG to Address Bus The OP ~EG bits 8 to 15 are gated to the Address Bus when the OP REG to Address 2-90 (5/68) • During all CPU operations other than CTRL's and during CPU stop the Data Bus parity bit PI is forced. H;5L,o"'de.~ dev'·QC,. aclct~e.~ SENSE crRL-.. oI,',:t /~/ Test for TrQlP Req .....cst S~~e / l/ (I/O) R.eset or SetPL A.E6 (CPLA) CPU /~/ Se~;tJtI. RcadI PlAke"" .1StJJ./~5J.tJ /~S~t1, J.1l1t2. ( CArd I/O Co~o~l /J/ ./52, I.2S~fJJ Iltl .J't~J /2<,J OJ ::I /S/ ~t::.se,,"'#4 n 1'1 ztPC :!! o m oz Z -I III .ffo,.a3e COIA/yol 11'1 I~/ /A/ N I .... 'l> » ,.... ~Qf,..,.~ At::.se,..,.~t:/ (/¢ ... .s/) (If ... iIJ ~fOe 1ttJ;,ilt~ Sloe BSC,4- 2.1.. h~l4,.e .t -4 AS5'{j"",,,,,~,,,t ell"" J>e..icc !/-ddr-,ess lJ1j,r Hrjt.()rd~Y IBM CONFIDENTIAL The only operations which require to send CPU (see I/O BUS IN), the forced Data out data from the CPU to the attachments Bus bit PI has to be changed according to are the CTRL micro-instructions and the parity of the sensed data byte. The prin- ICPL. However, during ICPL the CTRL ciples of this parity change is given in functions are performed during cycle 0 figure 2 -ti. and 1 only. The OPR Decode F signal, generated depending upon the four highorder bits of the Control Strobes for SENSE and CTRL CTRL instruction in the OP REG, gates the INT SU bit. 8 to 15 to the Data Bus. • During SENSE operations, functions The parity bit PI is provided by the SU within the attachments are controlled Parity Correction circuits and is similar by the SENSE Strobe (T3) and by the to that bit PI displayed in Data Register SENSE Control Strobe (delta T8). (DR-) U on the customer console. During ICPL, cycle 0 and 1 (ICPL CTRL) the Data Bus bits are forced by circuits as shown in figure • within the attachments are controlled 2-21. Since the Data switches are set to During C TRL operations, functions by the Sense Reset pulse (T3) and by /20/, the CTRL Strobe (delta T8), the forced Data Bus bits control the same attachment functions as for a CTRL /20/ mic ro- instruction. Four control signals (strobes) are generated within the CPU w.hich are sent out to the attachments via bus lines. These signals are timing signals which control the SENSE or CTRL functions in the attachments in relation to CPU processing Data Bus Parity For CTRL micro-instructions the bus time. These four signals are: parity bit PI is provided by the SU parity bit PI, which is similar to the INT SU bit PI, since during CTRL no shift unit functions are performed. During ICPL CTRL the parity bit PI is also Sense Reset (CTRL only) CTRL Strobe (CTRL only) SENSE Strobe (SENSE only) SENSE Control Strobe (SENSE only) forced by circuits according to the generated Th ese control signals are gated to the bit pattern. attachments by Pror"IHO not CS (CPU ru.n- During all other operations (also GPU stop) ning but not cycle stealing) and the active the Data Bus bit PI is forced unconditionally Allow Strobe signal. to provide always correct parity on the Allow Strobe is active during SENSE, CTRL, Data Bus. and ICPL only. However, Allow Strobe is Since the Data Bus is also used to transport prevented during cycle 1 of indirect ad- sensed data from the attachments to the dres s ed SENSE or C TRL instruction. During 2-92 (5/68) l¢ rCR Col. 13;",}:1... 1=1... Set Reset/Set ICPL/Ct¢ L-__ 1> ~ __ ~ ____ ~ __- L________ ~ __ ~ __ is .13 .1.2. . ~ ________ ~ __ ~ ____ ~ __ ~ ____ ~ __ ~ __ ~ CE Select S... .2 "/~I rCPL/ CY.L I I Cl> I ¢ ¢ I I ¢ I I ¢ l ¢ 1 ¢ ¢ 1 1 ~ ¢ 1 1 ¢ 1 1 1... 1 OJ ~ n oz ::!J o m Z ~ r- r=,~I.t,.e .t. -N, .t.t. '" I \0 '" 'be",ce Addr-e.ss I.?¢/ FI.t~h·OLA$G((,Lt;~ rCPt..-crRL. IBM CONFIDENTIAL A TTACHHENT EO I I t>r':~C:f"4U of l>QtCl BI.4.S 1UV'1't~ a.~~I""~ d"''':III~ I/O SENSE. this cycle I the IAR updating of indirect ,SENSE Strobe and SENSE Control Strobe addressed (ALC) I/O instructions is performed. In addition, the Allow Strobe condition is inhibited during indirect addressed CTRL Both strobes are generated for SENSE and ICPL CY 2 (ICPL SENSE) only. The SENSE instructions when delta CY2 overlaps with Strobe, generated at T3 after the SENSE CY O. No Allow Strobe during the overlapping micro-instruction has been transferred period prevents the CTRL strobe (delta into the OP REG (OPR Decode E, CYO, T8) during CY O. This is necessary since TI) or at T3 during ICPL SENSE (CY 2), the control bits are read out and set onto allows setting/resetting of the Sense Re- the Data Bus not earlier than during CY 2. gisters by sense data. The source of the Thus, the CTRL strobe is prevented and sense data is defined by the device address occurs at the end (delta T8) of CY 2 only. on the Address Bus. 2-94 (5/68) IBM CONFIDENTIAL After the Sense Register has been set, the rio Di.play sense data is available on the Data Bus • and, thus, also at CPU Data Bus Entry. This sense data is placed into FDR when the SENSE Control Strobe (delta T8) becomes rio Display allows to select and display any SENSE data SOllrce in the attachment during CPU run as well as during CPU stop. active. Beside the Data Bus Entry Control, the SENSE Control Strobe is used within the attachments to perform reset functions (resets latches the conditions of which are The I/O Display allows the CE to select just have been sensed). and display any required rio sense data The SENSE Strobe affects the Sense Re- source by a device address set up in the gisters of all present attachments, but sense CE Select switches data is provided to only one of them (Sense Display functions when the CPU stops as Register in the attachment specified by the well as during CPU run, but not during highorder digit of the device address). All SENSE or CTRL. The Display Sense Strobe other Sense registers are set to zero since generated at T6, activates the SENSE no sense data is provided. Strobe which controls the Sense Registers Sense data remains in the Sense Register in the attachments. until the next SENSE or C TRL instruction Since the Display Sense Strobe occurs for is executed. each cycle (T6 to T6) the sense data source 1 and 2. This I/O is tested in a rate which corresponds with the CPU processing speed (every 2 or 3.6 microseconds). Sense Reset and CTRL Strobe The rio Display Latch, which is only reset for SENSE, CTRL, rCPL and CPU LOG in, gates the I/O Bus Entry (Data Bus Both signals are generated for CTRL and entry) to the display (PI to 15) on the CE ICPL CTRL (CY 0 and CY 1) only. console, but only when the CE Display Se- The Sense Reset signal, generated at T3, lect Switch is set to I/O Display. resets all Sense Registers in the attach- The sense information, which illuminates ments to clear the Data Bus for the control the indicators can also be used to generate bits. the Equal Synch signal (Test Hub) or, if the The CTRL Strobe, generated at delta T8, CE Compare Stop switch is turned on, to is the timing signal which controls the stop CPU depending upon I/O conditions. functions in the attachment defined by the For Equal Synch or Compare Stop the sensed device address and the control bits on the data byte is compared against the byte Data Bus. setup in the CE Select switches 3 and 4. 2020 FETOM (5/68) 2-95 IBM CONFIDENTIAL I/O Bus Powering SENSES (I/O Address 1 x, MANOP Inbus to FDR) at T4. During I/O SENSES (Device The bus lines type A (LSA termination) require Addresses 0 x, 2 x to A x) and all CTRL additional powering. operations (CPU, I/O ICPL) the Address For this powering. the bus lines enter the CPU and leave it again after power- Bus is gated into FDR at T4, but the Data ing. Bus is accepted at delta T8. The later This amplification divides the complete bus into halves. which are identified with the letters A acceptance of Data Bus in relation to Address Bus (bus before powering) and B (bus after powering). (T4) is based on the Data Bus delay caused by the bus termination type B. Especially for direct addressed I/O SENSES the Data Bus is gated simultaneously into FDR and into the loworder byte of the speci- I/O BUS IN fied LS register at delta T8. To provide A comprehensive representation of all bus correct parity in the highorder byte of the lines entering the CPU is given in figure LS register, the parity bit PO is forced. 2 -.2,. The following sections describe the I/O Bus input shown in the FEMDM, 2020 CPU, figure 4-121. This figure shows the Data and Address Bus input controls CPU SENSE as well as the CPU SENSE circuits. • CPU SENSES are specified by Device Addresses with the highorder hexadecimal digit = /1/. Bus in Control • SENSES /14/ and /15/ are the only halfword SENSES. -. Data and Address Bus are set into FDR by I/O Bus to FDR signals. • • I/O SENSE, direct addressing, places the Data Bus Information directly into CPU SENSE data is applied without parity bits and, thus, the Prevent ALU and SU check signal is generated. the loworder byte of the specified LS CPU SENSES are identified by Device Ad- register. dressec (on Addl~cSS Bu~), the highorder hexadecimal digit of which is /1/ (Address Bus bits 8 to 11 = 0001). This condition causes Address and Data Bus are gated into FDR the I/O Address 1 x signal. by the signals I/O Bus to FDR 0-7 (Address The I/O Address 1 x signal specifies in Bus) and I/O Bus to FDR 8-15 (Data Bus). connection with the Address Bus bits 13 These signals are generated for CPU to 15 any SENSE between /10/ and /16/. 2-96 (5/68) IBM CONFIDENTIAL DATA BUS F -»- - A 1)]) RES,s R. au s PL T\"Qp Reql.les'tL;Vlesl-1- >--t-_______________......._____~3~-..!..1_J_-~J.:.:.-7-~ 'REG .1.-1- ICPL r-------<~ > BUS U\llb"ffe~ I/O Ba.L,~ RUM COI ev;ce l, 2,3,4) Read II I. o.to. Out IGo.-Ie ouT f/;-1 C S :J)A TA A I i CPU C'fCLE STEt\L CONTROLJ 1---. _ _ _ _ _ . _ _ . I I --~ + CS I","';b;t Cned:. +C.S -t I I A I N t4 a »ATA lJuS _-+-<--CSl>atq't'I Bits 11-15 CPl,,( MAIN J Bus I I _J 0:1 3: () o Z ." orn Z -I 5> r- 'B~'1 CONFIDENTIAL The CS Data Bus, able to transport one half- still present lower priority requests. word (two bytes including parity bits), con- During CS operations data address and field nects the cycle steal units directly with the length are available in fixed LS registers. Main Storage output (SDR) or input (Inhibit). Each CS device has its own data address The CS Data Bus is used either to provide and field length register (figure data from the CPU to the cycle Steal units These registers are selected by X-addresses or vice versa. The data direction is con- and Select LS- Y signals which are generated trolled by the CS Data Out gates or by the depending upon the active highest priority CS store signals. Gates and signals are CS Request Latch. 2-1.6 ). generated within the CPU CS control. Especially for byte transfer from or to the Any CS Request CS units the byte not affected is directly regenerated (Force Regen) by connecting the SDR to the Inhibit. The CS control bus lines entering CPU control the CPU CS control circuit according to the CS operation ordered by the CS unit. Any active CS Request Latch forces the main control signal Any CS Request. This signal is active from T3 until the end of T2. The offset for one T-period between the active CS Request Latch (T2 to TI) and the The CS control bus lines leaving CPU in- Any CS Request signal (T3 to T2) is achieved form the requesting CS unit about the pre- by controlling the signal during T2 depen- sent CPU conditions. ding upon the Cycle Steal latch. Any MAN0p blocks Any CS Request. Within the CPU CS control circuits Any CS REQUEST CS Request controls resetting and setting The CS Request Lines Device 1 to 4, ac- of the control latches. tivated within the CS units, tUrn on the CS Within the CPU circuits Any CS Request Request Latches 1 to 4 gated by the Sense controls the following main function and CS Request signal. This signal is identical signals: with T2 and is also used to reset the CS 1. Addressing of fixed CS registers in Request Latches. Thus, a CS Request latch Local Store (depending upon requesting remains active for the period T2 to T1. device) at T 5 and T7 , TS and T2. If more than one CS Request is active at the same time, all corresponding CS Re- 2. Generation of LS !"e~d sig~ale LS quest latches are set. During the following to SAR (T5) and LS to MAR (T5, TS) CS cycle only the highest priority request as well as the LS Write signal at is effective and the request source (latch) T7 and T2. of the corresponding CS unit is reset. At next T2 all CS Request latches are reset, but they are set again depending upon the 2-102 (5/68) 3 Blocking of delta cycle advancing (Long Time Clock) at T4. lS 1 stor.c-+rol J. IOC. ~~tQ A<*:ly- 1 ( 6SCA lo.to. AoIdlBScA F~tlle1..~+t. " / Stor.Co....... 1 t J>a.to Add I" SIo~Co ...trol F~le~ 5 Add ... s......C4....h-ol.L. F;e1d I...e~ 3 2. F.'elcl telAllt'" I lAo R. 4. ])o.to. roc. tAR I R. Delta Process not CS Request. LA~ by dropping the Process not CS and the Process without Check and CS signals. 5. Delta Process without Check and CS Request. 6. Activating of the Set up Run Condition DEVICE SELECTION gate to start CPU if a CS request during CPU stop. The Device Selection consists of two latches (CS Device 3 or 4, CS Device Z or 3) which are reset/set at T6, according to the highest priority CS request when Any CS Re- CYCLE STEAL LATCH quest is active. The outputs of the two latches, gated by the The Cycle Steal Latch is active if Any CS active Cycle Steal Latch, are decoded and Request occurs from T6 (pulse B) until generate the CS Select (Device 1, 2, 3, or T6 (pulse B). This period agrees with the 4) signal, which is sent to the requesting core storage cycle (stolen cycle) (T6 to CS unit. T6) and defines the time at which CS data The two device selection latches save the transfer is possible. In main, the Cycle CS request information of the CS Request Steal Latch is used to block CPU functions Latches, which are already reset at the next 2020 FETOM (5/68) 2-103 IBM CONFlDENTlJ~L T2 (Sense CS Request), to be available during the cycle steal pe~iod (figure 2-.1' ). A CS operation can either be a read operation or a write operation. Both control signals active or inactive indicate an error and cause a CS Interface Check. The CS Read latch is reset at T6 when Any CS CONTROL CS Request is active and it is set again at T7, but only when CS Read is active. A CS operation initiated by a CS Request For CS Write the CS Read Latch remains is defined in detail by the CS control lines off. activated in the requesting CS unit. The six CS control lines are as follows: CS Read CS Write CS Halfword/CS Byte The control signal CS Halfword or CS Byte CS Halfword defines the data format which is transferred CS Byte either during CS Read or CS Write. CS Increment CS Decrement Similar to CS Read/CS Write both control signals are exclusive and a CS Interface Check occurs if both signals are on or off Each CS unit (device) provides its control simultaneously. signals via separate bus lines. Only the six control bus lines of the highest priority CS· Halfword active turns on the CS Half. CS unit, causing a CS request, are gated word latch at T7. The Latch has been reset, to the CPU CS control circuits. similar to the CS Read Latch, at T6 before. The CS Halfword Latch remains off when CS Byte is active. CS Read / CS Write The CS Read or CS Write control signal CS Increment / CS Decrement defines the CS data direction. For CS Read,data is transferred from the CS unit The control signal CS Increment or CS to the CPU core storage, while for CS Decrement define the processing direction Write,data is transferred from core of the CS data field in the CPU core stor. storage to the CS unit. Note that for CS age. operations the terms Read and Write re- Byte, the data address (LS register) is flect the I/O operations instead the core either incremented or decremented by 2 storage operations. or by 1. 2-104 (5/68) Depending upon CS Halfword or CS 11 T~ I .3 I T'i I ,5 i :r' 1T1 I.g I T.L 1T.2 I T3 I 'T"1i I TS I Tb I < C S Re9 ....crl{CSuVlit) fI':'----------- ~t b~ J - CS Seleet 1.2. 5el'lse. CS Re~l.(est ~tf5ll_-----------A!set/.5cst Not : c.s f'1-: •I es r-L I :--~-I~............~i..............·'...., I l>-_tJ<'~tT" .... be8 ~f~·~i......- C,:!cle S tea.l 1= L . CS Select Lo.tcl.,c.$ CS j:::: = prece~ :ne";cc:._ I T',p",lse B ........................ Re~/~t l&..e '{re -=_:,i,J.TWjbr.l'p.... 8......._ . ._ _ _ _ _ _ _. . . . . . . ._ . . . . IM O';V*SIA ... t; llole> "'/~H4Ie{ 111 AAe CS lit lAd ih.lf· ________________s.,/ft T2 IAIItJ Re,~u~.$t 4o."'l!Tb(JI) . .lIIIIiIIIiiilliiil_liIilIlIliillilllliilliliilllilllllllllllllillllilllll_ _ _ _ _ "r~ .Tg - - T7 "'ot It a ....d~(B) 7'3 G LS to HAl? 1- f =•• J7 bo.t~ Addrl ___ F.~" .. s"", , .. I __ __ _ _Il"a _L.eiiiiiil. ___ HA I( cf>I..dew1$ l1oCi/:~r CiJ(.(trll' "t:r'lq Qdcl;~s:~ LI .,_ _ _ _ _ _ __ T~ , tl' te.Set b~ VI~t loS to f1~~ :.s; o () T1 Z ...1 q J.1 o41'~r CDkf"l Jf t. s 11 C.s Coc.< .... f.2r U .. CS fele! le ..,ft, .s .T.6'_____T.3. T1 t,j,.,'fl!. ~<.eY-(9 Ct>c. "spb J / ctVlcl kAR tl) J);S'f'o.~ CV3 prov;dc .... #JeV10rlA. LO& REG BITS -l ::r: p -:;:::; n C' <: ,I o "< .Q. P¢ (JJ ...... '" 00 '" .... I - til I - - - CUT HERE - - - - - __ -.1 Z33-1021-0 ." .... :;' .... (!) c. :;' c en ~ N W ~ 2... b International Business Machines Corporation Field Engineering Division 112 East Post Road, White Plains, N. Y. 10601
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.3 Linearized : No XMP Toolkit : Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:56:37 Create Date : 2013:02:19 14:20:45-08:00 Modify Date : 2013:02:19 14:32:09-08:00 Metadata Date : 2013:02:19 14:32:09-08:00 Producer : Adobe Acrobat 9.52 Paper Capture Plug-in Format : application/pdf Document ID : uuid:1ca164ea-4632-4589-948a-47a9dac6b3d6 Instance ID : uuid:7c52f166-23b1-4095-93d9-d9ab3f8472f1 Page Layout : SinglePage Page Mode : UseOutlines Page Count : 193EXIF Metadata provided by EXIF.tools