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

Interface between buses attached with cached modules providing address space mapped cache coherent memory access with SNOOP hit memory updates

Assignee: Techsearch LLC
•
Filing: 1989-04-07
•
Granted: 1991-12-10
•
Expires: 2009-04-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An interface circuit permits a first bus master connected to a first bus to directly access a main memory connected to a second bus while maintaining coherency between corresponding data in the main memory and a cache memory used by a second bus master on the second bus. The interface circuit maps selected first bus addresses to corresponding second bus addresses such that when a bus master on the first bus attempts to read or write access one of the mapped first bus addresses, the bus interface circuit responds by read or write accessing a corresponding address in the memory on the second bus. The bus interface circuit stores SNOOP data indicating which memory addresses contain data cached in the cache memory, and when accessing a cached memory address, the bus interface circuit places a signal on the second bus telling the second bus master to copy data from the cache memory into the main memory before the interface circuit performs a main memory read access or to copy data from the main memory to the cache memory after the interface circuit completes a main memory write access, thereby to maintain coherency between the main memory and the cache memory.

Inventors

  • 👤 John G. Theus
  • 👤 Jeffrey L. Beachy

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-02 03:23
CPC Classifications
G; G11; G11C; G11C11/00; G11C11/21; G11C11/34; G11C11/40; G11C11/41; G11C11/413; G11C11/417; G11C11/419; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0806; G06F12/0815; G06F12/0831; G06F13/00; G06F13/14; G06F13/20; G06F13/28; G06F13/38; G06F13/40; G06F13/4004; G06F13/4027; G06F13/404

Claims Analysis

Total Claims: 4
Claim 1
Independent Claim 535 words
An apparatus for providing data communication between first and second buses, the first bus providing a first plurality of bus masters connected thereto with data read and write access to first data storage locations mapped to separate addresses within a first address space, wherein one of said first plurality of bus masters writes data to a first particular one of said first data storage locations by placing on the first bus an address to which the first particular one of said first data storage locations is mapped and transmitting the data via said first bus, and wherein one of said first plurality of bus masters reads data from a second particular one of said first data storage locations by placing on the first bus an address to which the second particular one of said first storage locations is mapped and receiving data via said first bus, the second bus providing a second plurality of bus masters connected thereto with data read and write access to second data storage locations mapped to separate addresses within a second address space, wherein one of said second plurality of bus masters writes data to a first particular one of said second data storage locations by placing on the second bus an address to which the first particular one of said second data storage locations is mapped and transmitting the data via said second bus, and wherein one of said second plurality of bus masters reads data from a second particular one of said second data storage locations by placing on the second bus an address to which the second particular one of said second storage locations is mapped and receiving data via said second bus, wherein one of said second plurality of bus masters connected to said second bus caches data read out of a subset of said second data storage locations, said second bus including means for conveying a SNOOP signal with an address appearing on the bus, the SNOOP signal telling said one of said second plurality of bus masters when to write cached data to the address appearing on the bus, the apparatus comprising: first mapping means coupled to said first bus for mapping first addresses within the first address space to second addresses within the second address space, for asserting an indicating signal and for generating one of said second addresses in response to one of said first addresses transmitted on said first bus from one of said first plurality of bus masters, said first mapping means also generating a SNOOP signal of a state indicating when a generated second address is mapped to one of said particular subset of the second data storage locations, and bus interface means connected to said first and second buses for responding to the first indicating signal when said one of said first plurality of bus masters is reading data by placing the generated second address and SNOOP signal on the second bus, receiving data from a second data storage location mapped to said second address, and transmitting the received data to said one of said first plurality of bus masters via said first bus when the said one of said first plurality of bus masters is reading data.
Claim 2
Independent Claim 535 words
An apparatus for providing data communication between first and second buses, the first bus providing a first plurality of bus masters connected thereto with data read and write access to first data storage locations mapped to separate addresses within a first address space, wherein one of said first plurality of bus masters writes data to a first particular one of said first data storage locations by placing on the first bus an address to which the first particular one of said first data storage locations is mapped and transmitting the data via said first bus, and wherein one of said first plurality of bus masters reads data from a second particular one of said first data storage locations by placing on the first bus an address to which the second particular one of said first storage locations is mapped and receiving data via said first bus, the second bus providing a second plurality of bus masters connected thereto with data read and write access to second data storage locations mapped to separate addresses within a second address space, wherein one of said second plurality of bus masters writes data to a first particular one of said second data storage locations by placing on the second bus an address to which the first particular one of said second data storage locations is mapped and transmitting the data via said second bus, and wherein one of said second plurality of bus masters reads data from a second particular one of said second data storage locations by placing on the second bus an address to which the second particular one of said second storage locations is mapped and receiving data via said second bus, wherein one of said second plurality of bus masters connected to said second bus caches data read out of a subset of said second data storage locations, said second bus including means for conveying a SNOOP signal with an address appearing on the bus, the SNOOP signal telling said one of said second plurality of bus masters when to write cached data to the address appearing on the bus, the apparatus comprising: first mapping means coupled to said first bus for mapping first addresses within the first address space to second addresses within the second address space, for asserting an indicating signal and for generating one of said second addresses in response to one of said first addresses transmitted on said first bus from one of said first plurality of bus masters, said first mapping means also generating a SNOOP signal of a state indicating when a generated second address is mapped to one of said particular subset of the second data storage locations, and bus interface means connected to said first and second buses for responding to the first indicating signal when said one of said first plurality of bus masters is reading data by placing the generated second address and SNOOP signal on the second bus, receiving data from a second data storage location mapped to said second address, and transmitting the received data to said one of said first plurality of bus masters via said first bus when the said one of said first plurality of bus masters is reading data.
Claim 3
Dependent Claim 34 words
The apparatus in accordance with claim 1 wherein said first mapping means generates said second address and said SNOOP signal in accordance with adjustable address mapping and SNOOP data stored by said mapping means.
Claim 4
Dependent Claim 52 words
The apparatus in accordance with claim 2 wherein said bus interface means further comprises means permitting one of said second plurality of bus masters connected to the second bus to adjust said mapping data and said SNOOP data by write accessing a portion of said second address space via said second bus.

References Cited (Backward Citations)

US4025365A Cited
US4747043A Cited
US4754394A Cited
US4755930A Cited
US4785395A Cited
US5008813A Cited
US5029070A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1994-12-09 1995-06-10 1995-12-10 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1998-12-09 1999-06-10 1999-12-10 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2002-12-09 2003-06-10 2003-12-10 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag