Patent GB-1037389-A (GB)
Title: Improvements relating to data storage apparatus
IPC: G06F12/04
Filed: 1964-01-06
Abstract: 1,037,389. Electric digital calculators; datastorage. INTERNATIONAL BUSINESS MACHINES CORPORATION. Jan. 6, 1964 [Jan. 7, 1963], No. 480/64. Headings G4A and G4C. In data storage apparatus, addressing circuitry specifies one location in each of a plurality of memories simultaneously, availability signals determining to which of the memories access shall be provided. Table look-up may selectively be done as above (" distributed mode ") or in a conventional fashion (" overlapped mode "). Table look-up: distributed mode.-An 8-bit byte code for each of a set of alphanumeric characters is stored in each of four memories in the form of words each consisting of eight character bytes plus a parity byte. An address comprises groups of bits to specify array (an array being a set of four words holding the same codes, one word from each memory) memory, byte and bit. Referring to Fig. 1 (not shown), the original number (in any memory) of the required character byte is stored by the computer in " a " address register 1022, least significant bit on right. The ordinal number is shifted three places to the left in an " a " shifter 1024 (corresponding to the 2<3> bits in a byte) in response to energization of one of 18 lines 1028 by a decode circuit 1030 itself controlled by a binary number placed by the computer in a register 1034. The table base address is stored in a register 1046 and the highest 12 bits thereof (specifying array and memory) shifted two places to the right in a shifter 1050 (Fig. 6, not shown), thereby losing the two bits specifying the memory. The resulting address (including the 6 bits not shifted) is added in an address adder 1042 to the shifted number from the " a " shifter 1024, the result being stored in a register 1064. Apart from tho 6 least-significant bits which form byte and bit selecting signals, the bits in register 1064 are shifted two places to the left in a reshifter 1068, to provide array selecting signals (10 bits) and memory selecting signals (2 bits). In view of the shifting, however, the memory selecting bits have been lost and, in distributed mode operation, the lowest-numbered unbusy memory is selected in accordance with signals on " memory not busy " line 1076 leading to a memory selector 1072. Table lookup: overlapped mode.-For this mode the code for each alphanumeric character occurs only once in the set of memories. Operation is as before except that the shifting and reshifting at 1050 and 1068 (not shown) respectively do not take place. As a result, the bits specifying the memory are not lost, and are passed via trunk 1070 (not shown) to control the memory selector 1072 (not shown). Table lookup: functions of two or more variables (e.g. product of " a " and " b ").- The address adder 1042 (Fig. 1, not shown) receives a third input from hardware designated " b " similar to that designated " a ". Amounts of shift are greater than before. Count operation.-The four memories may be used for keeping a record of the number of times employees have applied for health insurance. The employee's serial number is set into the " a address register 1022 (Fig. 1, not shown) and the byte selected from the memories incremented by one per application (done in the memory register). If each employee is limited to 32 applications per year, the highest five bit positions of the byte only are utilized (by suitable choice of the three least significant bits of the table base address) and when 32 is reached there will be a carry out of the storage area to signal the fact. Operation may be in distributed or overlapped mode. In the former case, each employee has four bytes and they are added together when it is required to know the number of applications.