Abstract:
A data processing system characterized by a high speed local storage unit used for storage of addresses and data involved in a variety of operations. Accesses to a main storage unit, containing both macroprogram and microprogram information, is under the control of addresses held in local storage. Transfer from a main line program to an interrupt subroutine is also handled by the local storage unit.
Abstract:
A storage device (hereinafter referred to as a high speed store) includes a plurality of registers or locations and has an access speed compatible with that of its processor. Operands and/or operators are entered into one group of said registers hereinafter referred to as a high speed stack (a push operation) and removed therefrom (a pop operation) for processing in a lastin-first-out order. The number of entries stored in the stack at any moment can become very large due to the nesting of operators. Since it is not economically feasible to provide a large capacity high speed stack, overflow of the stack into a slower speed storage device (hereinafter called a low speed stack) is provided. ''''Roll out'''' of entries to the low speed stack and ''''roll in'''' of the entries back to the high speed stack is effected as the high speed stack becomes full and empty. A backup register in the non-stack portion of the high speed store permits delay of roll out operations until the last possible moment. When a new entry is to be stored into the high speed stack (a push operation) and the stack is full, the new entry is put into the backup register, entries are rolled out from the high speed stack to the low speed stack and the new entry is then transferred from the backup register to the high speed stack. By means of pointers (stack addresses), pointer updating circuits and pointer controlled logic, entries rolled out to the low speed stack are still valid and available in the high speed stack for processing until they are either popped out or overlaid by new entries. This significantly reduces the number and frequency of roll out and roll in operations.
Abstract:
1457330 Data processing INTERNATIONAL BUSINESS MACHINES CORP 16 May 1974 [26 June 1973] 21688/74 Heading G4A In a data processing system having a high speed, last in-first out stack store for storing operands and operators for a processor, and a lower speed store arranged to store overflow copies of the data in the stack, roll in and roll out operations between the store and the stack store merely transfer a copy of a set of stack entries between the two stores and do not delete the entries from the source store. The arrangement reduces the number of roll operations required since, when an entry is to be made into a full stack, a roll out operation is initiated and the new entry overwrites the oldest stack entry which still remains in the stack. Then if a series of entries have to be removed from the stack, a roll-in is not necessary since the old entries still remain in the stack. Similarly following a roll-in operation, which is initiated when an entry is to be removed from the stack which is empty, entries may be entered into the stack overwriting the rolled-in entries without a roll-out operation since the entries being overwritten still remain in the lower speed store. The Specification describes in some detail the procedures involved in tracking the contents of the stack, and in addressing the lower speed store to ensure that the correct stack copies are accessed (roll-in) and the stack contents are copied into the correct locations in the lower speed store (roll-out). To this end three pointers and three status bits are used.