GB1313528A - Two-level storage system - Google Patents

Two-level storage system

Info

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
Application number
GB5795670A
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of GB1313528A publication Critical patent/GB1313528A/en
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0855Overlapped cache accessing, e.g. pipeline
    • G06F12/0857Overlapped cache accessing, e.g. pipeline by multiple requestors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/18Handling 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.
GB5795670A 1969-12-23 1970-12-07 Two-level storage system Expired GB1313528A (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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