Patent US5710906A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5710906A Expired / Lapsed US ⏱️ 0.0 years remaining

Predictive snooping of cache memory for master-initiated accesses

Assignee: OPTi Inc
•
Filing: 1995-07-07
•
Granted: 1998-01-20
•
Expires: 2015-07-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract When a PCI-bus controller receives a request from a PCI-bus master to transfer data with an address in secondary memory, the controller performs an initial inquire cycle and withholds TRDY# to the PCI-bus master until any write-back cycle completes. The controller then allows the burst access to take place between secondary memory and the PCI-bus master, and simultaneously and predictively, performs an inquire cycle of the L1 cache for the next cache line. In this manner, if the PCI burst continues past the cache line boundary, the new inquire cycle will already have taken place, or will already be in progress, thereby allowing the burst to proceed with, at most, a short delay. Predictive snoop cycles are not performed if the first transfer of a PCI-bus master access would be the last transfer before a cache line boundary is reached.

Inventors

  • 👤 Subir Ghosh
  • 👤 Hsu-Tien Tung

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-02 19:09
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0806; G06F12/0815; G06F12/0831; G06F12/0835; G06F12/0862

Claims Analysis

Total Claims: 43
Claim 1
Independent Claim 196 words
A method for transferring a plurality of data units between a bus master and a respective plurality of memory locations at sequential memory location addresses in an address space of a secondary memory, for use with a host processing unit and a first cache memory which caches memory locations of said secondary memory for said host processing unit, said first cache memory having a line size of l bytes, comprising the steps of: sequentially transferring data units between said bus master and said secondary memory beginning at a starting memory location address in said secondary memory address space and continuing beyond an l-byte boundary of said secondary memory address space, said sequentially transferred data units including a last data unit before said l-byte boundary and a first data unit beyond said l-byte boundary; and initiating a next-line inquiry, prior to completion of the transfer of the last data unit before said l-byte boundary, to determine whether an N+1'th l-byte line of said secondary memory is cached in a modified state in said first cache memory, said N+1'th l-byte line being a line of said secondary memory which includes said first data unit beyond said l-byte boundary.
Claim 2
Independent Claim 196 words
A method for transferring a plurality of data units between a bus master and a respective plurality of memory locations at sequential memory location addresses in an address space of a secondary memory, for use with a host processing unit and a first cache memory which caches memory locations of said secondary memory for said host processing unit, said first cache memory having a line size of l bytes, comprising the steps of: sequentially transferring data units between said bus master and said secondary memory beginning at a starting memory location address in said secondary memory address space and continuing beyond an l-byte boundary of said secondary memory address space, said sequentially transferred data units including a last data unit before said l-byte boundary and a first data unit beyond said l-byte boundary; and initiating a next-line inquiry, prior to completion of the transfer of the last data unit before said l-byte boundary, to determine whether an N+1'th l-byte line of said secondary memory is cached in a modified state in said first cache memory, said N+1'th l-byte line being a line of said secondary memory which includes said first data unit beyond said l-byte boundary.
Claim 3
Dependent Claim 77 words
A method according to claim 1, further comprising, if said next-line inquiry determines that said N+1'th l-byte line of secondary memory is cached in a modified state in said first cache memory, the steps of: stopping said step of sequentially transferring data units at said l-byte boundary; and continuing said step of sequentially transferring data units beyond said l-byte boundary after a write-back of said N+1'th l-byte line from said first cache memory to said secondary memory.
Claim 4
Dependent Claim 41 words
A method according to claim 1, wherein said secondary memory includes a tertiary memory and further includes a second cache memory which caches memory locations of said tertiary memory for said host processing unit and said first cache memory in combination.
Claim 5
Dependent Claim 173 words
A method according to claim 1, further comprising, prior to said step of sequentially transferring, the steps of: receiving an indication of said starting memory location address from said bus master; and initiating a first inquiry of whether an N'th l-byte line of said secondary memory is cached in a modified state in said first cache memory, said N'th l-byte line being a line of said secondary memory which includes the data unit of said starting memory location address, said first inquiry returning negatively if the N'th l-byte line is not cached in the modified state and issuing a write-back cycle if the N'th l-byte line is cached in a modified state, wherein said next-line inquiry is initiated at a time responsive to the time that said first inquiry returns negatively or that said write-back cycle completes, whichever occurs in response to said first inquiry, and wherein said time that said next-line inquiry is initiated is not responsive to the time of said transfer of said last data unit before said l-byte boundary.
Claim 6
Dependent Claim 205 words
A method according to claim 1, wherein said starting memory location address is not the address of the last data unit before said l-byte boundary, further for transferring a second plurality of data units between said bus master and a second respective plurality of memory locations at sequential memory location addresses in said secondary memory address space, beginning with a second starting memory location address which is the address of the highest data unit in an M'th l-byte line of said secondary memory, further comprising the steps of: transferring said highest data unit between said bus master and said secondary memory; initiating a second inquiry to determine whether the M+1'th l-byte line of said secondary memory is cached in a modified state in said first cache memory, said second inquiry returning negatively if the M+1'th l-byte line is not cached in the modified state and issuing a write-back cycle if the M+1'th l-byte line is cached in a modified state; and sequentially transferring data units between said bus master and said secondary memory beginning at the first memory location address in said M+1'th l-byte line only after said second inquiry returns negatively or said write-back cycle completes, whichever occurs in response to said second inquiry.
Claim 7
Dependent Claim 24 words
A method according to claim 5, wherein said step of transferring said highest data unit occurs after said step of initiating a second inquiry.
Claim 8
Dependent Claim 46 words
A method according to claim 1, wherein said bus master is a PCI bus master, wherein said first cache memory includes an instruction cache and a data cache, and wherein said host processing unit and said first cache memory are fabricated on a single CPU chip.
Claim 9
Dependent Claim 28 words
A method according to claim 1, wherein said next-line inquiry takes place concurrently with at least one of the data unit transfers in said step of sequentially transferring.
Claim 10
Independent Claim 184 words
A method for transferring data between a bus master and a plurality of memory locations at respective addresses in an address space of a secondary memory, for use with a host processing unit and a first cache memory which caches memory locations of said secondary memory for said host processing unit, said first cache memory having a line size of l bytes, comprising the steps of: sequentially transferring at least three data units between said bus master and said secondary memory beginning at a first starting memory location address in said secondary memory address space and continuing sequentially beyond an l-byte boundary of said secondary memory address space; and prior to completion of the transfer of the first data unit beyond said l-byte boundary, determining whether an N+1'th l-byte line of said secondary memory is cached in a modified state in said first cache memory, said N+1'th l-byte line being the line of said secondary memory which includes said first data unit beyond said l-byte boundary, all of said transfers of data units in said step of sequentially transferring, occurring at a constant rate.
Claim 11
Independent Claim 184 words
A method for transferring data between a bus master and a plurality of memory locations at respective addresses in an address space of a secondary memory, for use with a host processing unit and a first cache memory which caches memory locations of said secondary memory for said host processing unit, said first cache memory having a line size of l bytes, comprising the steps of: sequentially transferring at least three data units between said bus master and said secondary memory beginning at a first starting memory location address in said secondary memory address space and continuing sequentially beyond an l-byte boundary of said secondary memory address space; and prior to completion of the transfer of the first data unit beyond said l-byte boundary, determining whether an N+1'th l-byte line of said secondary memory is cached in a modified state in said first cache memory, said N+1'th l-byte line being the line of said secondary memory which includes said first data unit beyond said l-byte boundary, all of said transfers of data units in said step of sequentially transferring, occurring at a constant rate.
Claim 12
Independent Claim 336 words
A method for use with a host processing subsystem, a bus master and memory locations addressable in a secondary memory address space, wherein said host processing subsystem includes a CPU and a first cache memory which caches memory locations of said secondary memory address space for said CPU, said first cache memory having a line size of l bytes, said host processing subsystem operating to return, in response to a secondary memory line address specified to said host processing subsystem and the assertion of an inquiry signal to said host processing subsystem, a hit modified indication of whether the specified secondary memory line is cached in a modified state in said first cache memory, and wherein said bus master transfers data with said memory locations according to a transaction protocol in which said bus master specifies a starting data unit address for said transaction, comprising, in response to initiation of a first transaction and specification by said bus master of a first starting address being the data unit address in the secondary memory address space of a first starting data unit, the steps of: specifying to said host processing subsystem, the line address of an N'th l-byte line of said secondary memory address space and asserting said inquiry signal a first time, said N'th l-byte line being the line of said secondary memory address space which includes said first starting data unit, after receiving said hit modified indication from said host processing subsystem in response to said inquiry signal, indicating that said N'th l-byte line of said secondary memory address space is cached in a modified state, transferring data units between said bus master and memory locations in said secondary memory address space according to said first transaction; and after receiving said hit modified indication, but not in response to completion of any transfer of said first transaction, specifying to said host processing subsystem the line address of the N+1'th l-byte line of said secondary memory address space and asserting said inquiry signal a second time.
Claim 13
Independent Claim 336 words
A method for use with a host processing subsystem, a bus master and memory locations addressable in a secondary memory address space, wherein said host processing subsystem includes a CPU and a first cache memory which caches memory locations of said secondary memory address space for said CPU, said first cache memory having a line size of l bytes, said host processing subsystem operating to return, in response to a secondary memory line address specified to said host processing subsystem and the assertion of an inquiry signal to said host processing subsystem, a hit modified indication of whether the specified secondary memory line is cached in a modified state in said first cache memory, and wherein said bus master transfers data with said memory locations according to a transaction protocol in which said bus master specifies a starting data unit address for said transaction, comprising, in response to initiation of a first transaction and specification by said bus master of a first starting address being the data unit address in the secondary memory address space of a first starting data unit, the steps of: specifying to said host processing subsystem, the line address of an N'th l-byte line of said secondary memory address space and asserting said inquiry signal a first time, said N'th l-byte line being the line of said secondary memory address space which includes said first starting data unit, after receiving said hit modified indication from said host processing subsystem in response to said inquiry signal, indicating that said N'th l-byte line of said secondary memory address space is cached in a modified state, transferring data units between said bus master and memory locations in said secondary memory address space according to said first transaction; and after receiving said hit modified indication, but not in response to completion of any transfer of said first transaction, specifying to said host processing subsystem the line address of the N+1'th l-byte line of said secondary memory address space and asserting said inquiry signal a second time.
Claim 14
Dependent Claim 43 words
A method according to claim 10, wherein in said transaction protocol, data units are transferred sequentially after said bus master specifies a starting data unit, until said transaction is terminated, no further address specification by said bus master being necessary during said transaction.
Claim 15
Dependent Claim 36 words
A method according to claim 10, wherein said bus master is a PCI bus master, and wherein said initiation of a first transaction comprises assertion by said bus master of the PCI-bus FRAME# and IRDY# signals.
Claim 16
Dependent Claim 52 words
A method according to claim 10, further comprising, if said hit modified indication from said host processing subsystem is asserted in response to said first assertion of said inquiry signal, the step of awaiting completion of a write-back cycle by said host processing subsystem prior to said step of transferring data units.
Claim 17
Dependent Claim 42 words
A method according to claim 10, wherein said hit modified indication is considered received on an n'th rising edge transition of a clock signal which occurs after said first assertion of said inquiry signal, n being a predefined integer greater than 0.
Claim 18
Dependent Claim 29 words
A method according to claim 10, wherein said first starting data unit is not the highest data unit in said N'th l-byte line of said secondary memory address space.
Claim 19
Dependent Claim 58 words
A method according to claim 10, wherein in said transaction protocol, data units are transferred sequentially after said bus master specifies a starting data unit, until said transaction is terminated, and wherein said first transaction is not terminated prior to the transfer of the first data unit in said N+1'th l-byte line of said secondary memory address space.
Claim 20
Dependent Claim 79 words
A method according to claim 10, wherein in said transaction protocol, data units are transferred sequentially after said bus master specifies a starting data unit, until said transaction is terminated, and wherein, if said host processing subsystem returns said hit modified indication unasserted in response to said second assertion of the inquiry signal, said first transaction is not terminated prior to the transfer of the first data unit in said N+1'th l-byte line of said secondary memory address space.
Claim 21
Dependent Claim 103 words
A method according to claim 17, further comprising, if said first transaction is not terminated prior to the transfer of the first data unit in said N+1'th l-byte line of said secondary memory address space, the step of, after transfer of the last data unit in said Nth l-byte line of said secondary memory address space, and before transfer of the last data unit in said N+1'th l-byte line of said secondary memory address space, specifying to said host processing subsystem the line address of the N+2'th l-byte line of said secondary memory address space and asserting said inquiry signal a third time.
Claim 22
Dependent Claim 54 words
A method according to claim 18, wherein, if said host processing subsystem returns said hit modified indication unasserted in response to said third assertion of said inquiry signal, said first transaction is not terminated prior to the transfer of the first data unit in said N+2'th l-byte line of said secondary memory address space.
Claim 23
Independent Claim 319 words
A method for use with a first processing subsystem, a second processing subsystem and memory locations addressable in a memory address space, wherein said first processing subsystem includes a first address-providing unit and a first cache memory which caches memory locations of said memory address space for said first address-providing unit, said first cache memory having a line size of l bytes, said first processing subsystem operating to return, in response to a memory line address specified to said first processing subsystem and the assertion of an inquiry signal (EADS#) to said first processing subsystem, a hit modified indication of whether the specified memory line is cached in a modified state in said first cache memory, and wherein said second processing subsystem transfers data with said memory locations according to a transaction protocol in which said second processing subsystem specifies a starting data unit address for said transaction, comprising, in response to specification by said second processing subsystem of a first starting address being the data unit address in the memory address space of a first starting data unit, and initiation of a first transaction, the steps of: specifying to said first processing subsystem, the line address of an N'th l-byte line of said memory address space and asserting said inquiry signal a first time, said N'th l-byte line being the line of said memory address space which includes said first starting data unit; after receiving said hit modified indication from said first processing subsystem in response to said inquiry signal, transferring data units between said second processing subsystem and memory locations in said memory address space according to said first transaction; and after receiving said hit modified indication, but not in response to completion of any transfer of said first transaction, specifying to said first processing subsystem the line address of the N+1'th l-byte line of said memory address space and asserting said inquiry signal a second time.
Claim 24
Independent Claim 319 words
A method for use with a first processing subsystem, a second processing subsystem and memory locations addressable in a memory address space, wherein said first processing subsystem includes a first address-providing unit and a first cache memory which caches memory locations of said memory address space for said first address-providing unit, said first cache memory having a line size of l bytes, said first processing subsystem operating to return, in response to a memory line address specified to said first processing subsystem and the assertion of an inquiry signal (EADS#) to said first processing subsystem, a hit modified indication of whether the specified memory line is cached in a modified state in said first cache memory, and wherein said second processing subsystem transfers data with said memory locations according to a transaction protocol in which said second processing subsystem specifies a starting data unit address for said transaction, comprising, in response to specification by said second processing subsystem of a first starting address being the data unit address in the memory address space of a first starting data unit, and initiation of a first transaction, the steps of: specifying to said first processing subsystem, the line address of an N'th l-byte line of said memory address space and asserting said inquiry signal a first time, said N'th l-byte line being the line of said memory address space which includes said first starting data unit; after receiving said hit modified indication from said first processing subsystem in response to said inquiry signal, transferring data units between said second processing subsystem and memory locations in said memory address space according to said first transaction; and after receiving said hit modified indication, but not in response to completion of any transfer of said first transaction, specifying to said first processing subsystem the line address of the N+1'th l-byte line of said memory address space and asserting said inquiry signal a second time.
Claim 25
Dependent Claim 196 words
Apparatus for transferring a plurality of data units between a bus master and a respective plurality of memory locations at sequential memory location addresses in an address space of a secondary memory, for use with a host processing unit and a first cache memory which caches memory locations of said secondary memory for said host processing unit, said first cache memory having a line size of l bytes, comprising: means for sequentially transferring data units between said bus master and said secondary memory beginning at a starting memory location address in said secondary memory address space and continuing beyond an l-byte boundary of said secondary memory address space, said sequentially transferred data units including a last data unit before said l-byte boundary and a first data unit beyond said l-byte boundary; and means for initiating a next-line inquiry, prior to completion of the transfer of the last data unit before said l-byte boundary, to determine whether an N+1'th l-byte line of said secondary memory is cached in a modified state in said first cache memory, said N+1'th l-byte line being a line of said secondary memory which includes said first data unit beyond said l-byte boundary.
Claim 26
Dependent Claim 196 words
Apparatus for transferring a plurality of data units between a bus master and a respective plurality of memory locations at sequential memory location addresses in an address space of a secondary memory, for use with a host processing unit and a first cache memory which caches memory locations of said secondary memory for said host processing unit, said first cache memory having a line size of l bytes, comprising: means for sequentially transferring data units between said bus master and said secondary memory beginning at a starting memory location address in said secondary memory address space and continuing beyond an l-byte boundary of said secondary memory address space, said sequentially transferred data units including a last data unit before said l-byte boundary and a first data unit beyond said l-byte boundary; and means for initiating a next-line inquiry, prior to completion of the transfer of the last data unit before said l-byte boundary, to determine whether an N+1'th l-byte line of said secondary memory is cached in a modified state in said first cache memory, said N+1'th l-byte line being a line of said secondary memory which includes said first data unit beyond said l-byte boundary.
Claim 27
Dependent Claim 75 words
Apparatus according to claim 21, further comprising means for, if said next-line inquiry determines that said N+1'th l-byte line of secondary memory is cached in a modified state in said first cache memory: stopping said step of sequentially transferring data units at said l-byte boundary; and continuing said step of sequentially transferring data units beyond said l-byte boundary after a write-back of said N+1'th l-byte line from said first cache memory to said secondary memory.
Claim 28
Dependent Claim 40 words
Apparatus according to claim 21, wherein said secondary memory includes a tertiary memory and further includes a second cache memory which caches memory locations of said tertiary memory for said host processing unit and said first cache memory in combination.
Claim 29
Dependent Claim 208 words
Apparatus according to claim 21, wherein said starting memory location address is not the address of the last data unit before said l-byte boundary, further for transferring a second plurality of data units between said bus master and a second respective plurality of memory locations at sequential memory location addresses in said secondary memory address space, beginning with a second starting memory location address which is the address of the highest data unit in an M'th l-byte line of said secondary memory, further comprising: means for transferring said highest data unit between said bus master and said secondary memory; means for initiating a second inquiry to determine weather the M+1'th l-byte line of said secondary memory is cached in a modified state in said first cache memory, said second inquiry returning negatively if the M+1'th l-byte line is not cached in the modified state in and issuing a write-back cycle if the M+1'th l-byte line is cached in a modified state; and means for sequentially transferring data units between said bus master and said secondary memory beginning at the first memory location address in said M+1'th l-byte line only after said second inquiry returns negatively or said write-back cycle completes, whichever occurs in response to said second inquiry.
Claim 30
Dependent Claim 45 words
Apparatus according to claim 21, wherein said bus master is a PCI bus master, wherein said first cache memory includes an instruction cache and a data cache, and wherein said host processing unit and said first cache memory are fabricated on a single CPU chip.
Claim 31
Dependent Claim 181 words
Apparatus for transferring data between a bus master and a plurality of memory locations at respective addresses in an address space of a secondary memory, for use with a host processing unit and a first cache memory which caches memory locations of said secondary memory for said host processing unit, said first cache memory having a line size of l bytes, comprising: means for sequentially transferring at least three data units between said bus master and said secondary memory beginning at a first starting memory location address in said secondary memory address space and continuing sequentially beyond an l-byte boundary of said secondary memory address space; and means for, prior to completion of the transfer of the first data unit beyond said l-byte boundary, determining whether an N+1'th l-byte line of said secondary memory is cached in a modified state in said first cache memory, said N+1'th l-byte line being the line of said secondary memory which includes said first data unit beyond said l-byte boundary, said means for sequentially transferring, transferring all of said data units at a constant rate.
Claim 32
Dependent Claim 181 words
Apparatus for transferring data between a bus master and a plurality of memory locations at respective addresses in an address space of a secondary memory, for use with a host processing unit and a first cache memory which caches memory locations of said secondary memory for said host processing unit, said first cache memory having a line size of l bytes, comprising: means for sequentially transferring at least three data units between said bus master and said secondary memory beginning at a first starting memory location address in said secondary memory address space and continuing sequentially beyond an l-byte boundary of said secondary memory address space; and means for, prior to completion of the transfer of the first data unit beyond said l-byte boundary, determining whether an N+1'th l-byte line of said secondary memory is cached in a modified state in said first cache memory, said N+1'th l-byte line being the line of said secondary memory which includes said first data unit beyond said l-byte boundary, said means for sequentially transferring, transferring all of said data units at a constant rate.
Claim 33
Dependent Claim 313 words
Apparatus comprising a host processing subsystem, a bus master and memory locations addressable in a secondary memory address space, wherein said host processing subsystem includes a CPU and a first cache memory which caches memory locations of said secondary memory address space for said CPU, said first cache memory having a line size of l bytes, said host processing subsystem operating to return, in response to a secondary memory line address specified to said host processing subsystem and the assertion of an inquiry signal to said host processing subsystem, a hit modified indication of whether the specified secondary memory line is cached in a modified state in said first cache memory, and wherein said bus master transfers data with said memory locations according to a transaction protocol in which said bus master specifies a starting data unit address for said transaction, said apparatus further comprising: means for specifying to said host processing subsystem, the line address of an N'th l-byte line of said secondary memory address space and asserting said inquiry signal a first time, said N'th l-byte line being the line of said secondary memory address space which includes a first starting data unit specified by said bus master in initiating a first transaction, means for, after receiving said hit modified indication from said host processing subsystem in response to said inquiry signal, indicating that said N+1'th l-byte line of said secondary memory address space is cached in a modified state, transferring data units between said bus master and memory locations in said secondary memory address space according to said first transaction; and means for, after receiving said hit modified indication, but not in response to completion of any transfer of said first transaction, specifying to said host processing subsystem the line address of the N+1'th l-byte line of said secondary memory address space and asserting said inquiry signal a second time.
Claim 34
Dependent Claim 313 words
Apparatus comprising a host processing subsystem, a bus master and memory locations addressable in a secondary memory address space, wherein said host processing subsystem includes a CPU and a first cache memory which caches memory locations of said secondary memory address space for said CPU, said first cache memory having a line size of l bytes, said host processing subsystem operating to return, in response to a secondary memory line address specified to said host processing subsystem and the assertion of an inquiry signal to said host processing subsystem, a hit modified indication of whether the specified secondary memory line is cached in a modified state in said first cache memory, and wherein said bus master transfers data with said memory locations according to a transaction protocol in which said bus master specifies a starting data unit address for said transaction, said apparatus further comprising: means for specifying to said host processing subsystem, the line address of an N'th l-byte line of said secondary memory address space and asserting said inquiry signal a first time, said N'th l-byte line being the line of said secondary memory address space which includes a first starting data unit specified by said bus master in initiating a first transaction, means for, after receiving said hit modified indication from said host processing subsystem in response to said inquiry signal, indicating that said N+1'th l-byte line of said secondary memory address space is cached in a modified state, transferring data units between said bus master and memory locations in said secondary memory address space according to said first transaction; and means for, after receiving said hit modified indication, but not in response to completion of any transfer of said first transaction, specifying to said host processing subsystem the line address of the N+1'th l-byte line of said secondary memory address space and asserting said inquiry signal a second time.
Claim 35
Dependent Claim 42 words
Apparatus according to claim 27, wherein in said transaction protocol, data units are transferred sequentially after said bus master specifies a starting data unit, until said transaction is terminated, no further address specification by said bus master being necessary during said transaction.
Claim 36
Dependent Claim 34 words
Apparatus according no claim 27, wherein said bus master is a PCI bus master, and wherein said initiation of a first transaction comprises assertion by said bus master of PCI-bus FRAME# and IRDY# signals.
Claim 37
Dependent Claim 55 words
Apparatus according to claim 27, wherein, if said hit modified indication from said host processing subsystem is asserted in response to said first assertion of said inquiry signal, said means for transferring data units awaits completion of a write-back cycle by said host processing subsystem prior to transferring data units according to said first transaction.
Claim 38
Dependent Claim 41 words
Apparatus according to claim 27, wherein said hit modified indication is considered received on an n'th rising edge transition of a clock signal which occurs after said first assertion of said inquiry signal, n being a predefined integer greater than 0.
Claim 39
Dependent Claim 28 words
Apparatus according to claim 27, wherein said first starting data unit is not the highest data unit in said N'th l-byte line of said secondary memory address space.
Claim 40
Dependent Claim 57 words
Apparatus according to claim 27, wherein in said transaction protocol, data units are transferred sequentially after said bus master specifies a starting data unit, until said transaction is terminated, and wherein said first transaction is not terminated prior to the transfer of the first data unit in said N+1'th l-byte line of said secondary memory address space.
Claim 41
Dependent Claim 78 words
Apparatus according to claim 27, wherein in said transaction protocol, data units are transferred sequentially after said bus master specifies a starting data unit, until said transaction is terminated, and wherein, if said host processing subsystem returns said hit modified indication unasserted in response to said second assertion of the inquiry signal, said first transaction is not terminated prior to the transfer of the first data unit in said N+1'th l-byte line of said secondary memory address space.
Claim 42
Dependent Claim 295 words
Apparatus for use with a first processing subsystem, a second processing subsystem and memory locations addressable in a memory address space, wherein said first processing subsystem includes a first address-providing unit and a first cache memory which caches memory locations of said memory address space for said first address-providing unit, said first cache memory having a line size of l bytes, said first processing subsystem operating to return, in response to a memory line address specified to said first processing subsystem and the assertion of an inquiry signal to said first processing subsystem, a hit modified indication of whether the specified memory line is cached in a modified state in said first cache memory, and wherein said second processing subsystem transfers data with said memory locations according to a transaction protocol in which said second processing subsystem specifies a starting data unit address for said transaction, comprising: means for specifying to said first processing subsystem, the line address of an N'th l-byte line of said memory address space and asserting said inquiry signal a first time, said N'th l-byte line being the line of said memory address space which includes a first starting data unit specified by said second processing subsystem in initiating a first transaction; means for, after receiving said hit modified indication from said first processing subsystem in response to said inquiry signal, transferring data units between said second processing subsystem and memory locations in said memory address space according to said first transaction; and means for, after receiving said hit modified indication, but not in response to completion of any transfer of said first transaction, specifying to said first processing subsystem the line address of the N+1'th l-byte line of said memory address space and asserting said inquiry signal a second time.
Claim 43
Dependent Claim 295 words
Apparatus for use with a first processing subsystem, a second processing subsystem and memory locations addressable in a memory address space, wherein said first processing subsystem includes a first address-providing unit and a first cache memory which caches memory locations of said memory address space for said first address-providing unit, said first cache memory having a line size of l bytes, said first processing subsystem operating to return, in response to a memory line address specified to said first processing subsystem and the assertion of an inquiry signal to said first processing subsystem, a hit modified indication of whether the specified memory line is cached in a modified state in said first cache memory, and wherein said second processing subsystem transfers data with said memory locations according to a transaction protocol in which said second processing subsystem specifies a starting data unit address for said transaction, comprising: means for specifying to said first processing subsystem, the line address of an N'th l-byte line of said memory address space and asserting said inquiry signal a first time, said N'th l-byte line being the line of said memory address space which includes a first starting data unit specified by said second processing subsystem in initiating a first transaction; means for, after receiving said hit modified indication from said first processing subsystem in response to said inquiry signal, transferring data units between said second processing subsystem and memory locations in said memory address space according to said first transaction; and means for, after receiving said hit modified indication, but not in response to completion of any transfer of said first transaction, specifying to said first processing subsystem the line address of the N+1'th l-byte line of said memory address space and asserting said inquiry signal a second time.

References Cited (Backward Citations)

US5341487A Cited
US5535363A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-01-19 2001-07-21 2002-01-20 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-01-19 2005-07-21 2006-01-20 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-01-19 2009-07-21 2010-01-20 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag