Patent GB-1261252-A (GB)
Title: Data storage and processing system
Inventor: CORBETT JAMES PATRICK
IPC: G11C21/00
Filed: 1969-02-19
Abstract: 1,261,252. Programmed control of machine tools. GENERAL ELECTRIC CO. Feb. 19, 1969 [Feb. 29, 1968(2)], No. 9085/69. Heading G3N. [Also in Division G4] A data storage and processing system comprises a recirculating store into which a group of words can be entered, each word consisting of a plurality of plural-bit digits, and the words being interleaved at digit level, the recirculation loop including an arithmetic unit which delays the recirculating data by one digit time and processes it, a switching means being connected from the output of the arithmetic unit to another input of it to provide for the combination of successive words. There are 6 such groups in the loop, each of 3 words of 8 decimal digits each, each digit being in 8421 binary-coded form. In Fig. 1, data in a delay line 80 recirculates via gate 84, arithmetic unit 83 (imposing a one digit delay) through its first input PR1, and gate 86. A word can be moved forward one word position by using gate 89 to bypass the arithmetic unit 83, or moved backward one word position by recirculating via gate 88 from the arithmetic unit 83 output to a second input SEC of the arithmetic unit 83 with blocking of gate 84. Alternatively, the gate 84 may remain unblocked, the arithmetic unit 83 adding its inputs at PR1 and SEC or subtracting either from the other. The input to SEC may alternatively come from data input means 40-44, or via overflow storage 95 from another word. The delay line 80 output can be displayed at 94, and the arithmetic unit 83 output can be passed to machine tool control equipment 95A, 96. Fig. 1B shows the arithmetic unit 83 comprising a full adder/subtractor 20<SP>1</SP>, having 3 carry/borrow bi-stables at 21<SP>1</SP> for the 3 words of a group respectively, used for both inter-bit and inter-digit carries, the sum/ difference output 35<SP>1</SP> of adder/subtractor 20<SP>1</SP> going via one-bit delays 22<SP>1</SP>, 23<SP>1</SP>, 24<SP>1</SP> to a full adder/subtractor 26<SP>1</SP> used for adding in corrective sixes as provided by a six-correction-recognition- and-generation circuit 25<SP>1</SP> and for complementing (for negative results) under control of a circuit 27<SP>1</SP> which includes a single carry/borrow/complement bi-stable for adder/subtracter 26<SP>1</SP>. A carry output 40<SP>1</SP> of "sixes" circuit 25<SP>1</SP> is simply ORed with the carry/borrow otherwise produced at 36<SP>1</SP> by first adder/subtracter 20<SP>1</SP>. The sum/ difference output 49<SP>1</SP> of second adder/subtracter 26<SP>1</SP> is given a final one-bit delay at 28<SP>1</SP>. Machine tool control and digital differential analyser. In Fig. 1A, data from manual or tape input 41, 40 is routed by distributer 45, according to addresses from the same source, to the various units shown (connections generally omitted). Storage and processing units shown, such as 13, 14, 46, 47, 29, 31, 30, 32, though shown as separate boxes are in fact time slots in (and functions performed by) the recirculating store and arithmetic unit of Fig. 1. A pulse train with frequency a function of desired machine velocity is produced by feedrate control 13 according to the programme as modified by a manual feedrate override 12, is modified or not in accordance with the programme in a function generator 14 according as contouring or positioning control is desired (switches 17, 20) and feeds reversible command phase counters 33, 34 for comparison with actual X and Y position feedback signals from 36, 37 to control machine motion. The pulses also increment X and Y position accumulators 30, 32 and decrement X and Y distance counters 29, 31. The distance counters 29, 31 are pre-set with the difference of programmed numbers from respective buffers 46, 47 minus the contents of the position accumulators 30, 32 (or in the case of incremental mode for contouring control, with the buffer numbers unmodified). When either counter 29, 31 reaches zero it stops pulse supply for its coordinate direction by opening a respective switch 24, 27. Digital differential analyser operation may be achieved by having, for each co-ordinate direction, an integrand register and a remainder register (in the recirculating store). The integrand register is pre-set with a number indicating desired velocity and its contents are continually added into the remainder register, overflow producing a pulse indicative of desired motion. If the desired motion is a straight line, the contents of the integrand registers remain constant, whereas for circular or parabolic paths, they will be modified in accordance with the overflows.