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

Computer hybrid memory including DRAM and EDRAM memory components, with secondary cache in EDRAM for DRAM

Assignee: Enhanced Memory Systems Inc
•
Filing: 1996-03-14
•
Granted: 1999-02-23
•
Expires: 2016-03-14
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A computer system with a hybrid main memory which includes both EDRAM and DRAM, with a DRAM cache provided within a designated portion of the EDRAM portion of the main memory. Read requests are handled by copying data being read from DRAM into a cache portion of EDRAM under the direction of a pseudo cache controller and decoder which converts the DRAM address to a EDRAM address corresponding to the cache location of EDRAM. Read "hit" requests are responded to by reading data directly from the cache portion of EDRAM. Write requests to DRAM are, for purposes of cache coherency when a copy of the address being written to is present in the EDRAM cache portion, accomplished by writing data both to DRAM and overwriting the stale data existing in the cache portion of EDRAM.

Inventors

  • 👤 James Dean Joseph

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-03 18:56
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0893

Claims Analysis

Total Claims: 27
Claim 1
Independent Claim 181 words
A memory device, comprising: first memory components mapped into first main memory address locations; an enhanced dynamic random access memory (EDRAM) having an integrated EDRAM cache and a dynamic memory array, whereby when said EDRAM is addressed, data is read from said EDRAM cache if it is contained in said EDRAM cache, and moved to and read from said EDRAM cache if it is not contained in said EDRAM cache; said EDRAM having at least some dynamic memory array addresses mapped into second main memory address locations, and at least some other dynamic memory array addresses allocated as a secondary cache for said first memory components; and a secondary cache controller for addressing said secondary cache if data to be read from said first memory components is contained in said secondary cache, and to move said data to be read from said first memory components to said secondary cache if said data is not contained in said secondary cache, then to address said secondary cache; whereby said data to be read from said first memory components is read from said EDRAM.
Claim 2
Dependent Claim 181 words
A memory device, comprising: first memory components mapped into first main memory address locations; an enhanced dynamic random access memory (EDRAM) having an integrated EDRAM cache and a dynamic memory array, whereby when said EDRAM is addressed, data is read from said EDRAM cache if it is contained in said EDRAM cache, and moved to and read from said EDRAM cache if it is not contained in said EDRAM cache; said EDRAM having at least some dynamic memory array addresses mapped into second main memory address locations, and at least some other dynamic memory array addresses allocated as a secondary cache for said first memory components; and a secondary cache controller for addressing said secondary cache if data to be read from said first memory components is contained in said secondary cache, and to move said data to be read from said first memory components to said secondary cache if said data is not contained in said secondary cache, then to address said secondary cache; whereby said data to be read from said first memory components is read from said EDRAM.
Claim 3
Dependent Claim 34 words
The memory device of claim 1 wherein said secondary cache controller comprises a secondary cache directory for containing addresses of data in said first memory components that are also contained in said secondary cache.
Claim 4
Dependent Claim 28 words
The memory device of claim 2 wherein said secondary cache controller comprises a decoder for mapping addresses of said first memory components to addresses of said secondary cache.
Claim 5
Dependent Claim 28 words
The memory device of claim 1 wherein said secondary cache controller comprises a circuit for applying addresses within said second main memory address locations directly to said EDRAM.
Claim 6
Dependent Claim 14 words
The memory device of claim 1 wherein said first memory components are DRAM devices.
Claim 7
Dependent Claim 57 words
The memory device of claim 5 wherein said at least some dynamic memory array addresses of said EDRAM are mapped from 0 to 640 Kbytes and from 1 to 4 Mbytes, and wherein said first memory components are mapped from 4 to 8 Mbytes, and wherein said secondary cache is located between 640 Kbyte and 1 Mbyte.
Claim 8
Dependent Claim 34 words
The memory device of claim 5 wherein said at least some dynamic memory array addresses of said EDRAM overlap an address region in which at least some of said first memory components are mapped.
Claim 9
Dependent Claim 35 words
The memory device of claim 7 wherein said addresses of said EDRAM which overlap an address region in which at least some of said first memory components are mapped are used as said secondary cache.
Claim 10
Independent Claim 114 words
A method for providing a main memory for a computer, comprising; mapping first memory components into first main memory address locations; mapping at least some dynamic memory array addresses of an enhanced dynamic random access memory (EDRAM) into second main memory address locations; allocating at least some other dynamic memory array addresses of said EDRAM to a secondary cache for said first memory components; addressing said secondary cache if data to be read from said first memory components is contained in said secondary cache, and moving data to be read from said first memory components to said secondary cache if said data is not contained in said secondary cache, then addressing said secondary cache.
Claim 11
Independent Claim 114 words
A method for providing a main memory for a computer, comprising; mapping first memory components into first main memory address locations; mapping at least some dynamic memory array addresses of an enhanced dynamic random access memory (EDRAM) into second main memory address locations; allocating at least some other dynamic memory array addresses of said EDRAM to a secondary cache for said first memory components; addressing said secondary cache if data to be read from said first memory components is contained in said secondary cache, and moving data to be read from said first memory components to said secondary cache if said data is not contained in said secondary cache, then addressing said secondary cache.
Claim 12
Dependent Claim 30 words
The method of claim 9 further comprising providing a secondary cache directory for containing addresses of data in said first memory components that are also contained in said secondary cache.
Claim 13
Dependent Claim 20 words
The method of claim 9 further comprising mapping addresses of said first memory components to addresses of said secondary cache.
Claim 14
Dependent Claim 20 words
The method of claim 9 further comprising applying addresses within said second main memory address locations directly to said EDRAM.
Claim 15
Dependent Claim 190 words
A computer system having a CPU and a main memory, comprising: first memory components mapped into first main memory address locations; an enhanced dynamic random access memory (EDRAM) having an integrated EDRAM cache and a dynamic memory array, in which data is read from said EDRAM cache when the data is contained in said EDRAM cache, and in which data is moved to and read from said EDRAM cache when the data is not contained in said EDRAM cache; said EDRAM having at least some dynamic memory array addresses mapped into second main memory address locations, and at least some other dynamic memory array addresses allocated as a secondary cache for said first memory components; and a secondary cache controller for addressing said secondary cache if data to be read from said first memory components is contained in said secondary cache, and to move said data to be read from said first memory components to said secondary cache if said data is not contained in said secondary cache, then to address said secondary cache; whereby said data to be read from said first memory components is read from said EDRAM.
Claim 16
Dependent Claim 190 words
A computer system having a CPU and a main memory, comprising: first memory components mapped into first main memory address locations; an enhanced dynamic random access memory (EDRAM) having an integrated EDRAM cache and a dynamic memory array, in which data is read from said EDRAM cache when the data is contained in said EDRAM cache, and in which data is moved to and read from said EDRAM cache when the data is not contained in said EDRAM cache; said EDRAM having at least some dynamic memory array addresses mapped into second main memory address locations, and at least some other dynamic memory array addresses allocated as a secondary cache for said first memory components; and a secondary cache controller for addressing said secondary cache if data to be read from said first memory components is contained in said secondary cache, and to move said data to be read from said first memory components to said secondary cache if said data is not contained in said secondary cache, then to address said secondary cache; whereby said data to be read from said first memory components is read from said EDRAM.
Claim 17
Dependent Claim 34 words
The computer system of claim 13 wherein said secondary cache controller comprises a secondary cache directory for containing addresses of data in said first memory components that are also contained in said secondary cache.
Claim 18
Dependent Claim 28 words
The computer system of claim 14 wherein said secondary cache controller comprises a decoder for mapping addresses of said first memory components to addresses of said secondary cache.
Claim 19
Dependent Claim 28 words
The computer system of claim 13 wherein said secondary cache controller comprises a circuit for applying addresses within said second main memory address locations directly to said EDRAM.
Claim 20
Dependent Claim 14 words
The computer system of claim 13 wherein said first memory components are DRAM devices.
Claim 21
Dependent Claim 57 words
The computer system of claim 17 wherein said at least some dynamic memory array addresses of said EDRAM are mapped from 0 to 640 Kbytes and from 1 to 4 Mbytes, and wherein said first memory components are mapped from 4 to 8 Mbytes, and wherein said secondary cache is located between 640 Kbyte and 1 Mbyte.
Claim 22
Dependent Claim 34 words
The computer system of claim 17 wherein said at least some dynamic memory array addresses of said EDRAM overlap an address region in which at least some of said first memory components are mapped.
Claim 23
Dependent Claim 35 words
The computer system of claim 19 wherein said addresses of said EDRAM which overlap an address region in which at least some of said first memory components are mapped are used as said secondary cache.
Claim 24
Dependent Claim 60 words
The computer system of claim 20 wherein said at least some dynamic memory array addresses of said EDRAM are mapped into main memory address locations below 8 Mbytes, said first memory components are mapped into main memory address locations above 6 Mbytes, and said at least some other dynamic memory array addresses of said EDRAM between 6 and 8 Mbytes.
Claim 25
Dependent Claim 118 words
In a computer system comprising a central processing unit operatively associated with a main memory having addresses designating data stored in a dynamic random access memory (DRAM) and addresses designating data stored in a first portion of an enhanced dynamic random access memory (EDRAM), a method for providing a caching capability for the DRAM, comprising: designating a second portion of the EDRAM as a cache portion for the DRAM; and responding to a request to read data from a specific DRAM address by reading said data from said cache portion if said data is contained in said cache portion, and by copying said data to said cache portion if said data is not contained in said cache portion.
Claim 26
Dependent Claim 118 words
In a computer system comprising a central processing unit operatively associated with a main memory having addresses designating data stored in a dynamic random access memory (DRAM) and addresses designating data stored in a first portion of an enhanced dynamic random access memory (EDRAM), a method for providing a caching capability for the DRAM, comprising: designating a second portion of the EDRAM as a cache portion for the DRAM; and responding to a request to read data from a specific DRAM address by reading said data from said cache portion if said data is contained in said cache portion, and by copying said data to said cache portion if said data is not contained in said cache portion.
Claim 27
Dependent Claim 37 words
The method of claim 22 further comprising responding to a request to write data to a specific DRAM address by writing said data to said specific DRAM address and by writing said data to said cache portion.

References Cited (Backward Citations)

US5408636A Cited
US5699317A Cited
US5361391A Cited
US5721828A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-02-22 2002-08-24 2003-02-23 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-02-22 2006-08-24 2007-02-23 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-02-22 2010-08-24 2011-02-23 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag