← Back to Patent Explorer
US3735360A Expired / Lapsed US ⏱️ 0.0 years remaining

High speed buffer operation in a multi-processing system

Assignee: International Business Machines Corp
•
Filing: 1971-08-25
•
Granted: 1973-05-22
•
Expires: 1991-08-25
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Described is an interlocking scheme which permits multiprocessing in a shared storage configuration with each central processing unit (CPU) having a private high-speed buffer storage utilizing the store-in-buffer concept. The basic problem solved is insuring that all processors access the latest copy of common data with minimum performance impact. The system allows fetch-only copies of the same shared storage block to exist simultaneously in all private storages, but only one private store is allowed to contain a block of data currently being stored into. Disclosed, in addition to the normal controls necessary to search a high speed buffer to determine whether or not the data required by the processor is in the buffer, is means for interconnecting the processors sharing a main storage. The interconnection is for broadcasting address information from one processor to the storage control mechanism of other processors for the purpose of invalidating data in other private storages or insuring that data obtained by one processor from the shared storage is the most current value. That is, if data has been modified in the buffer of another processor, that data must be returned to the shared storage in its modified form to insure that the one processor receives the most current data.

Inventors

  • 👤 D Anderson
  • 👤 R Gustafson
  • 👤 L Johnson
  • 👤 F Sparacio

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-22 23:40
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0806; G06F12/0815; G06F12/0817; G06F15/00; G06F15/16

Claims Analysis

Total Claims: 10
Claim 1
Independent Claim 205 words
A data processing system comprising: shared storage means for storing a plurality of operands at addressable locations; a plurality of processing means, each including means to provide a local address signal identifying an operand location in said shared storage means, and local access control means for signalling an access request for fetching data from or storing data in the addressed location; each said processing means having connected thereto a local high speed buffer system including : private storage means connected to said shared storage means for storing a predetermined portion of operands previously transferred from said shared storage means to said private storage means, directory means for identifying the operands in said private storage means for immediate access by said processor and, storage control means including means responsive to said local address signal means, said local access control means, and said directory means for providing in said private storage means, access to an operand from an identified operand location; and means interconnecting all of said processing means and said high speed buffer system responsive to address signals provided by said processing means representing a particular operand location for causing the most current value of the particular operand to be accessed by all said processing means.
Claim 2
Dependent Claim 205 words
A data processing system comprising: shared storage means for storing a plurality of operands at addressable locations; a plurality of processing means, each including means to provide a local address signal identifying an operand location in said shared storage means, and local access control means for signalling an access request for fetching data from or storing data in the addressed location; each said processing means having connected thereto a local high speed buffer system including : private storage means connected to said shared storage means for storing a predetermined portion of operands previously transferred from said shared storage means to said private storage means, directory means for identifying the operands in said private storage means for immediate access by said processor and, storage control means including means responsive to said local address signal means, said local access control means, and said directory means for providing in said private storage means, access to an operand from an identified operand location; and means interconnecting all of said processing means and said high speed buffer system responsive to address signals provided by said processing means representing a particular operand location for causing the most current value of the particular operand to be accessed by all said processing means.
Claim 3
Dependent Claim 309 words
A data processing system in accordance with claim 1 wherein, each said private storage means includes: a plurality of storage sections, each said section storing a block of a predetermined number of operands transferred from said shared storage; each said directory means, includes: a plurality of registers each of said registers being associated with a predetermined one of said storage sections, and each including a block address portion and valid bit having first and second states for identifying the block of said shared storage operands in said storage section and the validity thereof when said validity bit is in said first state; each said storage control means includes: search means, responsive to said local address signals, including means for searching said directory and providing a block-valid signal or block-not-valid signal dependent on whether or not the applied local block address identifies a block with valid data in one of said storage sections, and including processor data gating means connected between said local private storage and processing means and responsive to said block-valid signal and said local access control means for providing access by said processor to the identified operand in said storage section; and said interconnecting means includes: broadcast means in each of said processing means, including remote signalling means connected and responsive to said local address signals and said local access request control signal for storing data for transferring said signals from any one of said processing means to said search means of other of said processing means; and means in the other of said processing means responsive to said block-valid signal and said remote access request control signal for storing data to generate an invalidate signal to change said valid bit to said second state in the one of said registers having said block address portion the same as the block address of said remote address signals.
Claim 4
Dependent Claim 106 words
A data processing system in accordance with claim 2 wherein, each of said registers further includes: a fetch-only bit having a first or second state, the first state indicating that the block of operands transferred from said shared storage to said associated storage section is valid in one of said private storage means of said other of said processing means; and said broadcast means of said interconnecting means further includes: means connected and responsive to the first state of said fetch-only bit, whereby said interconnecting means is enabled only when said block of operands is validly stored in more than one of said private storage means.
Claim 5
Dependent Claim 52 words
A data processing system in accordance with claim 3 wherein, said interconnecting means further includes: reset signalling means in said other of said procesSing means, connected and responsive to said block-not valid signal or said invalidate signal for resetting said fetch-only bit in said register of said one of said processing means.
Claim 6
Dependent Claim 199 words
A data processing system in accordance with claim 2 wherein, said remote signalling means of said broadcast means further includes: means responsive to said block-not valid signal in said one of said processors for transferring said applied local address and said block-not valid signal to said search means of said other of said processors; said search means of said other of said processors further includes: up-date gating means, responsive to said block-valid signal and said remote block-not valid signal and connected to said storage data gating means for transferring the block of operands identified by said remote block address from said storage section to said shared storage; and said search means of said one of said processors further includes: storage data gating means connected between said local private storage and said shared storage responsive to said block-not valid signal, for selecting one of said storage sections, and for transferring the block of operands from said selected storage section to said shared storage and the block of operands identified by the applied local block address from said shared storage to said selected storage section, and for entering the block address in said associated register and for setting said valid bit.
Claim 7
Dependent Claim 143 words
A data processing system in accordance with claim 5 wherein, each register in each of said directory means includes: a store bit having first and second states, said first state indicating that the block of operands in said associated storage section has been stored into by said local processor; said up-date gating means is further responsive to the first state of said store bit; and said storage data gating means from said private storage means to said shared storage is further responsive to the first state of said store bit and said valid bit of said register associated with said selected storage section, whereby transfer of blocks of operands from said private storage to said shared storage is only effected when the block of operands in said private storage has been stored into and therefore differs from the operands in said shared storage.
Claim 8
Dependent Claim 41 words
A data processing system in accordance with claim 6 wherein, each said storage control further includes: means for resetting said store bit of said registers when the block of operands of said associated storage section are transferred to said shared storage.
Claim 9
Dependent Claim 244 words
A data processing system comprising: shared storage means for storing a plurality of operands at addressable locations; a plurality of processing means, each including means to provide local address signals identifying an operand location in said shared storage means, and local access control means for signalling an access request for fetching data from or storing data in the addressed location; each said processing means having connected thereto a local high speed buffer system including : set-associative private storage means connected to said shared storage means for storing a predetermined portion of operands previously transferred from said shared storage means to said private storage means, directory means for identifying the operands in said private storage means for immediate access by said associated processor and, storage control means including means responsive to said local address signal means, said directory means and said local access control means for providing in said private storage means, access to an operand from an identified operand location in response to a fetch request, and, in response to a store request, providing access to said identified location in said shared storage and said private storage upon condition that said identified operand is in said private storage; and means interconnecting all of said processIng means and said high speed buffer system, responsive to address signals provided by said processing means representing a particular operand location for causing the most current value of the particular operand to be accessed by all said processing means.
Claim 10
Dependent Claim 244 words
A data processing system comprising: shared storage means for storing a plurality of operands at addressable locations; a plurality of processing means, each including means to provide local address signals identifying an operand location in said shared storage means, and local access control means for signalling an access request for fetching data from or storing data in the addressed location; each said processing means having connected thereto a local high speed buffer system including : set-associative private storage means connected to said shared storage means for storing a predetermined portion of operands previously transferred from said shared storage means to said private storage means, directory means for identifying the operands in said private storage means for immediate access by said associated processor and, storage control means including means responsive to said local address signal means, said directory means and said local access control means for providing in said private storage means, access to an operand from an identified operand location in response to a fetch request, and, in response to a store request, providing access to said identified location in said shared storage and said private storage upon condition that said identified operand is in said private storage; and means interconnecting all of said processIng means and said high speed buffer system, responsive to address signals provided by said processing means representing a particular operand location for causing the most current value of the particular operand to be accessed by all said processing means.

References Cited (Backward Citations)

US3618040A Cited
US3581291A Cited
US3588829A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1976-05-21 1976-11-20 1977-05-22 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1980-05-21 1980-11-20 1981-05-22 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1984-05-21 1984-11-20 1985-05-22 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag