Patent US4583165A successfully refreshed from Google Patents.
US4583165A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Apparatus and method for controlling storage access in a multilevel storage system
Assignee: International Business Machines Corp
•
Filing: 1982-06-30
•
Granted: 1986-04-15
•
Expires: 2002-06-30
Abstract
Abstract In a digital data processing system including an Instruction Unit, an Execute Unit, and a multilevel Processor Storage System including a cache memory, additional apparatus is included referred to as a Load Control Block Address Unit for implementing a load control block address instruction which permits prefetching of data from main memory into cache simultaneous with execution of a sequence of instructions in a linked list wherein information determining starting address of a next block in the linked list is stored at a location in the current block at a fixed offset from the beginning of the block.
Inventors
- 👤 Philip L. Rosenfeld
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-25 22:32
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/30003; G06F9/3004; G06F9/30043; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0844; G06F12/0855; G06F12/0862; G06F2212/00; G06F2212/60; G06F2212/6028
Claims Analysis
Total Claims: 13
Claim 1
Independent Claim
228 words
In a digital data processing system which processes control blocks of information including data and instructions, and having an Instruction unit for decoding said instructions, an Execute unit for executing said instructions and a multilevel storage system, said storage system further comprising a main memory wherein said control blocks of information are stored at designated addresses, a cache memory which stores selected ones of said control blocks of information transferred from said main memory, and a storage control unit for controlling the transfer of selected ones of said control blocks of information between said main memory and said cache memory, the improvement comprising: a control block address prefetch unit connected to said Instruction unit for receiving a control signal in response to said Instruction unit decoding a predetermined instruction in a given control block of information, and also connected to said storage control unit for receiving the address of said given control block of information presently being processed by said data processing system, said prefetch unit utilizing said control signal and said address of said given control block of information to compute the address of a different control block of information in said main memory, and including means for prefetching said different control block of information to said cache memory for subsequent processing, concurrent with said given control block of information being processed by said data processing system.
Claim 2
Dependent Claim
228 words
In a digital data processing system which processes control blocks of information including data and instructions, and having an Instruction unit for decoding said instructions, an Execute unit for executing said instructions and a multilevel storage system, said storage system further comprising a main memory wherein said control blocks of information are stored at designated addresses, a cache memory which stores selected ones of said control blocks of information transferred from said main memory, and a storage control unit for controlling the transfer of selected ones of said control blocks of information between said main memory and said cache memory, the improvement comprising: a control block address prefetch unit connected to said Instruction unit for receiving a control signal in response to said Instruction unit decoding a predetermined instruction in a given control block of information, and also connected to said storage control unit for receiving the address of said given control block of information presently being processed by said data processing system, said prefetch unit utilizing said control signal and said address of said given control block of information to compute the address of a different control block of information in said main memory, and including means for prefetching said different control block of information to said cache memory for subsequent processing, concurrent with said given control block of information being processed by said data processing system.
Claim 3
Dependent Claim
34 words
Apparatus according to claim 1, wherein said control block address prefetch unit further comprises a microprogrammed controller, a plurality of operand registers, an address adder, an effective address register and an operand zero detector.
Claim 4
Dependent Claim
32 words
Apparatus according to claim 2, wherein said operand zero detector is connected to one of said operand registers to generate a stop signal when the contents of said operand register are zero.
Claim 5
Dependent Claim
248 words
In a digital processing system which processes control blocks of information including data and instructions, which instructions include a load control block address instruction, and having an Instruction unit for decoding said instructions, an Execute unit for executing said instructions and a multilevel storage system, said storage system further comprising a main memory wherein said control blocks of information are stored at designated addresses, a cache memory which stores selected ones of said control blocks of information transferred from said main memory, and a storage control unit for controlling the transfer of selected ones of said control blocks of information between said main memory and said cache memory, the improvement comprising: a load control block address unit connected to said instruction unit for receiving and offset signal in response to said instruction unit decoding said load control block address instruction from a given control block of information being presently processed by said data processing system, and also connected to said storage control unit for receiving the address of said given control block of information, said load control block address unit combining said offset signal and said address of said given control block of information to compute the address of at least one different control block of information in said main memory, and including means for prefetching said different control block of information to said cache memory from said main memory for subsequent processing, concurrent with said given control block of information being processed by said data processing system.
Claim 6
Dependent Claim
248 words
In a digital processing system which processes control blocks of information including data and instructions, which instructions include a load control block address instruction, and having an Instruction unit for decoding said instructions, an Execute unit for executing said instructions and a multilevel storage system, said storage system further comprising a main memory wherein said control blocks of information are stored at designated addresses, a cache memory which stores selected ones of said control blocks of information transferred from said main memory, and a storage control unit for controlling the transfer of selected ones of said control blocks of information between said main memory and said cache memory, the improvement comprising: a load control block address unit connected to said instruction unit for receiving and offset signal in response to said instruction unit decoding said load control block address instruction from a given control block of information being presently processed by said data processing system, and also connected to said storage control unit for receiving the address of said given control block of information, said load control block address unit combining said offset signal and said address of said given control block of information to compute the address of at least one different control block of information in said main memory, and including means for prefetching said different control block of information to said cache memory from said main memory for subsequent processing, concurrent with said given control block of information being processed by said data processing system.
Claim 7
Dependent Claim
60 words
The combination claimed in claim 4 wherein said load control block address unit includes: a first register to store said offset signal; a second register for storing the address of said given control block of information; and an adder for adding the contents of said first and second registers to provide the address of said different control block of information.
Claim 8
Dependent Claim
250 words
In a digital processing system which processes control blocks of information including data and instructions, which instructions include a prefetch instruction, and having an Instruction unit for decoding said instructions, an Execute unit for executing said instructions and a multilevel storage system, said storage system further comprising a main memory wherein said control blocks of information are stored in a linked list at designated addresses at non contiguous memory locations, a cache memory which stores selected ones of said control blocks of information transferred from said main memory, and a storage control unit for controlling the transfer of selected ones of said control blocks of information between said main memory and said cache memory, the improvement comprising: a control block address prefetch unit connected to said instruction unit for receiving an offset signal in response to said instruction unit decoding said prefetch instruction from a given control block of information being presently processed by said data processing system, and also connected to said storage control unit for receiving the address of said given control block of information, said prefetch unit combining said offset signal and said address of said given control block of information to compute the address of the next control block of information in said linked list in said main memory, and including means for prefetching said next control block of information to said cache memory from said main memory for subsequent processing, concurrent with said given control block of information being processed by said data processing system.
Claim 9
Dependent Claim
250 words
In a digital processing system which processes control blocks of information including data and instructions, which instructions include a prefetch instruction, and having an Instruction unit for decoding said instructions, an Execute unit for executing said instructions and a multilevel storage system, said storage system further comprising a main memory wherein said control blocks of information are stored in a linked list at designated addresses at non contiguous memory locations, a cache memory which stores selected ones of said control blocks of information transferred from said main memory, and a storage control unit for controlling the transfer of selected ones of said control blocks of information between said main memory and said cache memory, the improvement comprising: a control block address prefetch unit connected to said instruction unit for receiving an offset signal in response to said instruction unit decoding said prefetch instruction from a given control block of information being presently processed by said data processing system, and also connected to said storage control unit for receiving the address of said given control block of information, said prefetch unit combining said offset signal and said address of said given control block of information to compute the address of the next control block of information in said linked list in said main memory, and including means for prefetching said next control block of information to said cache memory from said main memory for subsequent processing, concurrent with said given control block of information being processed by said data processing system.
Claim 10
Dependent Claim
331 words
In a digital processing system which processes a linked list of control blocks of information including data and instructions, which instructions include a prefetch instruction, and having an instruction unit for decoding said instructions, an Execute unit for executing said instructions, and a multilevel storage system, said storage system further comprising a main memory wherein said linked list of control blocks of information are stored at designated addresses at non contiguous memory locations, a cache memory which stores selected ones of said control blocks of information transferred from said main memory, and a storage control unit for controlling the transfer of selected ones of said control blocks of information between said main memory and said cache memory, and a control block address prefetch unit connected to said Instruction unit and said storage control unit, a method of prefetching a subsequent control block of information to said cache memory from main memory concurrent with a given control block of information being processed by said data processing system, said method comprising the steps of: providing an offset signal to said control block address prefetch unit in response to said Instruction unit decoding said prefetch instruction in said given control block of information; providing at least a portion of the address of said given control block of information to said control block address prefetch unit from said storage control unit in response to the decoding of said prefetch instruction; computing the address of a subsequent control block of information in said linked list of information by said control block address prefetch unit in response to combining said offset signal and said at least a portion of the address of said given control block of information; and responding to the generation of said address of said subsequent control block of information by said storage control unit to transfer said subsequent control block of information from main memory to cache memory, concurrent with said given control block of information being processed by said data processing system.
Claim 11
Dependent Claim
331 words
In a digital processing system which processes a linked list of control blocks of information including data and instructions, which instructions include a prefetch instruction, and having an instruction unit for decoding said instructions, an Execute unit for executing said instructions, and a multilevel storage system, said storage system further comprising a main memory wherein said linked list of control blocks of information are stored at designated addresses at non contiguous memory locations, a cache memory which stores selected ones of said control blocks of information transferred from said main memory, and a storage control unit for controlling the transfer of selected ones of said control blocks of information between said main memory and said cache memory, and a control block address prefetch unit connected to said Instruction unit and said storage control unit, a method of prefetching a subsequent control block of information to said cache memory from main memory concurrent with a given control block of information being processed by said data processing system, said method comprising the steps of: providing an offset signal to said control block address prefetch unit in response to said Instruction unit decoding said prefetch instruction in said given control block of information; providing at least a portion of the address of said given control block of information to said control block address prefetch unit from said storage control unit in response to the decoding of said prefetch instruction; computing the address of a subsequent control block of information in said linked list of information by said control block address prefetch unit in response to combining said offset signal and said at least a portion of the address of said given control block of information; and responding to the generation of said address of said subsequent control block of information by said storage control unit to transfer said subsequent control block of information from main memory to cache memory, concurrent with said given control block of information being processed by said data processing system.
Claim 12
Dependent Claim
337 words
In a digital processing system which processes a linked list of control blocks of information including data and instructions, which instructions include a load control block address instruction, and having an instruction unit for decoding said instructions, an Execute unit for executing said instructions, and a multilevel storage system, said storage system further comprising a main memory wherein said linked list of control blocks of information are stored at designated addresses, a cache memory which stores selected ones of said control blocks of information transferred from said main memory, and a storage control unit for controlling the transfer of selected ones of said control blocks of information between said main memory and said cache memory, and a load control block address unit connected to said Instruction unit and said storage control unit, a method of prefetching a subsequent control block of information in said linked list to said cache memory from main memory concurrent with a given control block of information being processed by said data processing system, said method comprising the steps of: providing an offset signal to said load control block address unit in response to said Instruction unit decoding said load control block instruction in said given control block of information; providing at least a portion of the address of said given control block of information to said load control block address unit from said storage control unit in response to the decoding of said prefetch instruction; computing the effective address of the next control block of information in said linked list of information by said load control block address unit in response to adding said offset signal to said at least a portion of the address of said given control block of information; and responding to the generation of said effective address of said next control block of information by said storage control unit to transfer said next control block of information from main memory to cache memory, concurrent with said given control block of information being processed by said data processing system.
Claim 13
Dependent Claim
337 words
In a digital processing system which processes a linked list of control blocks of information including data and instructions, which instructions include a load control block address instruction, and having an instruction unit for decoding said instructions, an Execute unit for executing said instructions, and a multilevel storage system, said storage system further comprising a main memory wherein said linked list of control blocks of information are stored at designated addresses, a cache memory which stores selected ones of said control blocks of information transferred from said main memory, and a storage control unit for controlling the transfer of selected ones of said control blocks of information between said main memory and said cache memory, and a load control block address unit connected to said Instruction unit and said storage control unit, a method of prefetching a subsequent control block of information in said linked list to said cache memory from main memory concurrent with a given control block of information being processed by said data processing system, said method comprising the steps of: providing an offset signal to said load control block address unit in response to said Instruction unit decoding said load control block instruction in said given control block of information; providing at least a portion of the address of said given control block of information to said load control block address unit from said storage control unit in response to the decoding of said prefetch instruction; computing the effective address of the next control block of information in said linked list of information by said load control block address unit in response to adding said offset signal to said at least a portion of the address of said given control block of information; and responding to the generation of said effective address of said next control block of information by said storage control unit to transfer said next control block of information from main memory to cache memory, concurrent with said given control block of information being processed by said data processing system.
References Cited (Backward Citations)
US3670307A
Cited
US3878513A
Cited
US3898624A
Cited
US4313158A
Cited
US4408275A
Cited
US4442488A
Cited
US4489378A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1989-04-14 | 1989-10-14 | 1990-04-15 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1993-04-14 | 1993-10-14 | 1994-04-15 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 1997-04-14 | 1997-10-14 | 1998-04-15 | $7700.00 | Window Closed / Lapsed |