Patent GB-1076775-A (GB)
Title: Data processing apparatus
IPC: G06F9/48
Filed: 1965-06-16
Abstract: 1,076,775. Data processors. INTERNATIONAL BUSINESS MACHINES CORPORATION. June 16, 1965 [June 30, 1964], No. 25360/65. Heading G4A. In a data processor, selection means permit one of a plurality of independently-operable sources of control signal patterns to present its signal patterns to control data manipulation, in accordance with a priority ranking. The sources are seven so called " request rings ", respectively relating to the following aspects of operations in order of decreasing priority: (1) input output, (2) data transfer, (3)-(5) operand control, (6) instruction load, (7) byte processing. The priority order may be departed from in that " instruction load " may be given priority over " operand control " when necessary. The operating cycle has an early B (bus) time and a late R (register) time, and each request ring has corresponding B and R latches. The B latches control the R latches and the R latches, via logic, control the B latches, the logic being also responsive to the current programmed instruction and machine conditions. A three-address programmed instruction activates the required rings which produce outputs specifying their identity and control signals. A priority unit responds to these identities to cause an " early decoder " corresponding to the highest priority requesting ring to decode the ring output. The decoded output is applied to gates and a gate control register both directly to control the B portion of the cycle and via an encoder, further B and R latches (to provide a delay) and a " late decoder" to control the R portion. The gates control transfer of data between memory and processing elements in the processor. The output of the selected early decoder also advances the associated ring to its next state (which depends on present state, instruction and machine conditions). The R portion of one cycle may overlap the B portion of the next except when the two portions require use of common data paths. The latter condition is detected by job conflict logic receiving the input to the late decoder, and results in the priority unit holding up the second cycle but not enabling the early decoder. Delays can be provided at the outputs of the early and late decoders to split cycles again. A cycle may have one of two lengths by controlling the lengths of the B and R pulses. Four main buses link the multi-byte MDR (memory data register) with other registers etc. A register is provided for saving operation code bits during indirect addressing. Error checking.-Parity checks are performed at the common input to the job conflict logic and the late decoder, and also at the output of the latter. Two of the four main buses are parity checked and since each operation involving use of the buses uses all four (zeroes being forced where necessary) this parity checking also in effect checks the control circuitry Invalid addresses and operation codes, and accessing by a programme of a memory address greater than a limit specified for the programme are detected. Error detection results in storing of register contents for diagnosis purposes (no details).