Nova Patents
EP0347040A1

Data memory system.

Abstract

A data memory system includes a main memory and a copy-back cache. Each line of the cache has a context tag, which is compared with a current context number to test whether the line contains the required data. The cache can be flushed simply by resetting all the context tags to a null value, which ensures that the data cannot be accessed. However, it remains physically in the cache, and will eventually be copied back to the main memory when it is about to be overwritten with different data or when the physical address is next used.

EP0347040A1, drawing sheet 1
Sheet 1 of 5

Term

Term ended

Projected expiry passed 12 May 2009, 17.4 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

6 claims: 2 independent, 4 dependent

  1. 1
    A data memory system comprising (a) a main memory, (b) a cache, having a plurality of locations, each location having a context tag, (c) means for maintaining a current context number, having any one of a predetermined set of values, (d) means for loading a data item from the main memory into a location of the cache, overwriting any data items already in that location, and setting the context tag of that location equal to the current context number, and (e) means for copying back modified data items from the cache to the main memory when they are about to be overwritten in the cache, characterised by means for setting all the context tags to a predetermined reserved value, not equal to any of said predetermined set of values.
  2. 3
    A data processing system comprising:(a) a main memory (b) a cache, having a plurality of locations, each location having a context tag, (c) data processing means for executing a plurality of processes, and for allocating one of a predetermined set of values to each of the processes as a context number for that process, (d) means for storing a current context number equal to the context number of the process currently being executed by the data processing means, (e) means for loading a data item from the main memory into a location of the cache, overwriting any data items already in that location, and setting the context tag of that location equal to the current context number, and (f) means for copying back modified data items from the cache to the main memory when they are about to be overwritten in the cache, characterised in that, when all of said predetermined set of values have been allocated, the processing means resets all the context tags in the cache to a predetermined reserved value not equal to any of said predetermined set of values.