GB1313528A - Two-level storage system - Google Patents
Two-level storage systemInfo
- Publication number
- GB1313528A GB1313528A GB5795670A GB5795670A GB1313528A GB 1313528 A GB1313528 A GB 1313528A GB 5795670 A GB5795670 A GB 5795670A GB 5795670 A GB5795670 A GB 5795670A GB 1313528 A GB1313528 A GB 1313528A
- Authority
- GB
- United Kingdom
- Prior art keywords
- store
- request
- stack
- priority
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0855—Overlapped cache accessing, e.g. pipeline
- G06F12/0857—Overlapped cache accessing, e.g. pipeline by multiple requestors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/18—Handling requests for interconnection or transfer for access to memory bus based on priority control
Abstract
1313528 Data storage INTERNATIONAL BUSINESS MACHINES CORP 7 Dec 1970 [23 Dec. 1969] 57956/70 Heading G4C A two-level storage system comprises a high. speed store 20 and a main store 32 arranged in operation to service storage access requests from a plurality of request sources P, Q, and comprises a plurality of storage request stacks 3, 4, each for storing requests from a different source, and means for servicing concurrently requests from different sources, wherein the high-speed store 20 includes a plurality of storage modules so arranged that more than one request can simultaneously access the high-speed store 20. Tag store 19 contains a multi-bit tag (including the virtual address) for each line (16 words) of data in the high-speed store 20. A directory 45 specifies the virtual address and physical address of each line of data in main store 32. P and Q and R (R being inter-storage transfer, see below) operations can occur concurrently to a large extent. Taking P operations, for example, a P request at 1 has to be repeated if the P request stack 3 is full. Otherwise if the stack is empty or if no request in it is ready for priority determination (due to, e.g., waiting for an interstorage transfer), the request is passed into the stack 3 and to a sequence interlock generator 5 and to P priority and hash 7. Generator 5 appends an interlock vector to the request in the stack 3 specifying the levels (positions) in the two stacks 3, 4 of requests which must be performed before this one (relating to the same location, detected by comparison of virtual addresses, e.g. a store operation followed by a fetch operation for the same location in the programme must be performed in that order). On the other hand, if there is a request in the P stack 3 ready for priority determination, the new request is passed into the stack 3 and the interlock generator 5. The interlock vector is appended as before. Then a ready request from the stack 3 is passed to the P priority and hash 7, this ready request being the oldest such in the stack 3, selected by a shift register holding stack level identifiers in order of age. When a request is received by P priority and hash 7, the virtual address of the required data is hashcoded into the addresses of a primary and an alternate tag in tag store 19 and of the corresponding locations in high speed store 20. A priority resolver 15 performs a priority determination between access attempts from 7, 8, 36 for locations in the same pair of modules of the high speed store 20, the order of (decreasing) priority being R, P, Q. The high-speed store 20 has 8 modules and up to 4 accesses can take place at a time, one access to each of 4 pairs of these modules. A priority resolver 11 performs the same function for the 8-module tag store 19. Assuming the P access attempts are granted access, the two tags addressed in the tag store 19 and the corresponding data from the high speed store 20 are passed to the P decision unit 25 where the desired virtual address is compared to those contained in the primary and alternate tags. If one agrees, the interlock vector is inspected and if this request is interlocked an indication is set in the request stack 3 and the request must contend for priority at 3, 7 again later. However, if the request is not interlocked, a store or fetch operation is performed on the respective data (in the case of a store operation the data is in the request stack waiting), and if the request was for the first word of a line an interstorage transfer operation is then initiated to prefetch the next line from main store 32 into high-speed store 20 unless it is already there, on the assumption that it will probably soon be needed. This prefetch interstorage transfer is produced by setting a request for this next line in the P request stack 3. When the required virtual address is compared (see above) to those in the primary and alternate tags, if neither agrees, R transfer unit 30, using R priority and hash 36, requests an interstorage transfer to move the required line of data from main store 32 to high-speed store 20. The required virtual address is compared with the virtual addresses in the directory 45 to obtain the physical address of the line in the main store 32. The line is transferred to the highspeed store line corresponding to the primary or alternate tag according to a bit of the virtual address and which (if any) of these lines are empty and which (if any) have a "hot" bit set (in the tag). Whenever a high-speed store line is referenced it hot bit is set. Periodically, a virtual address is generated (by a counter) and the hot bit corresponding to this address is reset, through an access request having R priority. Transfer from main store to highspeed store is preceded by updating of the copy (in main store) of the data (if any) to be replaced in high-speed store, if a "changed" bit in the tag for that data indicates that the data has been written into during its presence in high-speed store. After the interstorage transfer is complete, the request which originally was responsible for the transfer is passed from the P stack 3 to the priority area. As a modification, data thus transferred from main store 32 could be supplied directly to the requestor.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US88746969A | 1969-12-23 | 1969-12-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
GB1313528A true GB1313528A (en) | 1973-04-11 |
Family
ID=25391207
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB5795670A Expired GB1313528A (en) | 1969-12-23 | 1970-12-07 | Two-level storage system |
Country Status (5)
Country | Link |
---|---|
US (1) | US3670309A (en) |
JP (1) | JPS504530B1 (en) |
DE (1) | DE2061576A1 (en) |
FR (1) | FR2143504B1 (en) |
GB (1) | GB1313528A (en) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3878513A (en) * | 1972-02-08 | 1975-04-15 | Burroughs Corp | Data processing method and apparatus using occupancy indications to reserve storage space for a stack |
US3839704A (en) * | 1972-12-06 | 1974-10-01 | Ibm | Control for channel access to storage hierarchy system |
US3868644A (en) * | 1973-06-26 | 1975-02-25 | Ibm | Stack mechanism for a data processor |
US3928857A (en) * | 1973-08-30 | 1975-12-23 | Ibm | Instruction fetch apparatus with combined look-ahead and look-behind capability |
GB1499184A (en) * | 1974-04-13 | 1978-01-25 | Mathematik & Datenverarbeitung | Circuit arrangement for monitoring the state of memory segments |
US3967247A (en) * | 1974-11-11 | 1976-06-29 | Sperry Rand Corporation | Storage interface unit |
US3964054A (en) * | 1975-06-23 | 1976-06-15 | International Business Machines Corporation | Hierarchy response priority adjustment mechanism |
US4075686A (en) * | 1976-12-30 | 1978-02-21 | Honeywell Information Systems Inc. | Input/output cache system including bypass capability |
US4169284A (en) * | 1978-03-07 | 1979-09-25 | International Business Machines Corporation | Cache control for concurrent access |
US4208716A (en) * | 1978-12-11 | 1980-06-17 | Honeywell Information Systems Inc. | Cache arrangement for performing simultaneous read/write operations |
GB2037039B (en) * | 1978-12-11 | 1983-08-17 | Honeywell Inf Systems | Cache memory system |
US4707781A (en) * | 1979-01-09 | 1987-11-17 | Chopp Computer Corp. | Shared memory computer method and apparatus |
JPH048824B2 (en) * | 1979-01-09 | 1992-02-18 | ||
US4484262A (en) * | 1979-01-09 | 1984-11-20 | Sullivan Herbert W | Shared memory computer method and apparatus |
US4317168A (en) * | 1979-11-23 | 1982-02-23 | International Business Machines Corporation | Cache organization enabling concurrent line castout and line fetch transfers with main storage |
US4381541A (en) * | 1980-08-28 | 1983-04-26 | Sperry Corporation | Buffer memory referencing system for two data words |
US4458316A (en) * | 1981-03-06 | 1984-07-03 | International Business Machines Corporation | Queuing commands in a peripheral data storage system |
US4489378A (en) * | 1981-06-05 | 1984-12-18 | International Business Machines Corporation | Automatic adjustment of the quantity of prefetch data in a disk cache operation |
CA1187198A (en) * | 1981-06-15 | 1985-05-14 | Takashi Chiba | System for controlling access to channel buffers |
US4430701A (en) * | 1981-08-03 | 1984-02-07 | International Business Machines Corporation | Method and apparatus for a hierarchical paging storage system |
US4571674A (en) * | 1982-09-27 | 1986-02-18 | International Business Machines Corporation | Peripheral storage system having multiple data transfer rates |
US4887235A (en) * | 1982-12-17 | 1989-12-12 | Symbolics, Inc. | Symbolic language data processing system |
JPS59188879A (en) * | 1982-12-17 | 1984-10-26 | シンボリツクス・インコ−ポレ−テツド | Data processor |
US4527238A (en) * | 1983-02-28 | 1985-07-02 | Honeywell Information Systems Inc. | Cache with independent addressable data and directory arrays |
CA2072178A1 (en) * | 1991-06-24 | 1992-12-25 | Said S. Saadeh | Innate bus monitor for computer system manager |
US5832499A (en) * | 1996-07-10 | 1998-11-03 | Survivors Of The Shoah Visual History Foundation | Digital library system |
US6353831B1 (en) | 1998-11-02 | 2002-03-05 | Survivors Of The Shoah Visual History Foundation | Digital library system |
GB2378277B (en) * | 2001-07-31 | 2003-06-25 | Sun Microsystems Inc | Multiple address translations |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB979632A (en) * | 1960-04-20 | 1965-01-06 | Nat Res Dev | Improvements in or relating to electronic digital computing machines |
US3368207A (en) * | 1965-05-12 | 1968-02-06 | Ibm | File protection to i/o storage |
US3398405A (en) * | 1965-06-07 | 1968-08-20 | Burroughs Corp | Digital computer with memory lock operation |
US3469239A (en) * | 1965-12-02 | 1969-09-23 | Hughes Aircraft Co | Interlocking means for a multi-processor system |
US3473159A (en) * | 1966-07-07 | 1969-10-14 | Gen Electric | Data processing system including means for protecting predetermined areas of memory |
US3461433A (en) * | 1967-01-27 | 1969-08-12 | Sperry Rand Corp | Relative addressing system for memories |
-
1969
- 1969-12-23 US US887469A patent/US3670309A/en not_active Expired - Lifetime
-
1970
- 1970-11-19 FR FR7044212A patent/FR2143504B1/fr not_active Expired
- 1970-12-07 GB GB5795670A patent/GB1313528A/en not_active Expired
- 1970-12-11 JP JP45109657A patent/JPS504530B1/ja active Pending
- 1970-12-15 DE DE19702061576 patent/DE2061576A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
JPS504530B1 (en) | 1975-02-20 |
FR2143504A1 (en) | 1973-02-09 |
US3670309A (en) | 1972-06-13 |
FR2143504B1 (en) | 1974-10-11 |
DE2061576A1 (en) | 1971-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
GB1313528A (en) | Two-level storage system | |
US3693165A (en) | Parallel addressing of a storage hierarchy in a data processing system using virtual addressing | |
US4733352A (en) | Lock control for a shared storage in a data processing system | |
ES361451A1 (en) | Microprogrammed data processing system utilizing improved storage addressing means | |
US3866183A (en) | Communications control apparatus for the use with a cache store | |
US3699533A (en) | Memory system including buffer memories | |
US3938100A (en) | Virtual addressing apparatus for addressing the memory of a computer utilizing associative addressing techniques | |
US4053948A (en) | Look aside array invalidation mechanism | |
EP0149389B1 (en) | Address translation control system | |
WO1984001043A1 (en) | Method and apparatus for handling interprocessor calls in a multiprocessor system | |
JPS6133220B2 (en) | ||
GB1532798A (en) | Computer memory systems | |
GB1129988A (en) | Digital computers | |
EP0032956B1 (en) | Data processing system utilizing hierarchical memory | |
US8862834B2 (en) | Shared memory translation facility | |
GB1313529A (en) | Two-level storage system | |
FI86485B (en) | PORTZONKONTROLL. | |
KR960001945B1 (en) | Apparatus for increasing the number of hits in a translation | |
US3701977A (en) | General purpose digital computer | |
SE413815B (en) | DATA PROCESSING SYSTEM | |
JP2714952B2 (en) | Computer system | |
US20020002656A1 (en) | Information processing system | |
US5479629A (en) | Method and apparatus for translation request buffer and requestor table for minimizing the number of accesses to the same address | |
GB888023A (en) | Table lock-up system for a data processing device | |
JPH05210593A (en) | Memory partitioning device for microprocessor and method of loading segment descriptor to segment-register |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PS | Patent sealed [section 19, patents act 1949] | ||
PCNP | Patent ceased through non-payment of renewal fee |