Patents Examined by David J. O'Neill
  • Patent number: 5555391
    Abstract: A system and method for updating partial blocks of file data stored in a non-volatile storage within a file cache system connected to a host computer system. A first buffer and a last buffer receive from the non-volatile storage the existing portions of the blocks that are to be retained. A write buffer receives new data of a size not equal to an integral multiple of a block from a host computer system. The new data is merged under hardware control with the existing portions contained in the first buffer and the last buffer, thereby updating the cached file.
    Type: Grant
    Filed: December 23, 1993
    Date of Patent: September 10, 1996
    Assignee: Unisys Corporation
    Inventors: Joseba M. De Subijana, Gary R. Robeck, Wayne A. Michaelson, Steven M. Wierdsma
  • Patent number: 5553270
    Abstract: A computer system includes a processor having a primary cache, and a secondary cache data store, cache tag store, and memory controlled by a memory controller. The cache tag store, secondary cache data store, and memory share a common address bus. The secondary cache data store and the memory share a common data bus. In addition, some of the bits of the address bus are saved and fed directly to the memory. The memory controller provides for pipelined secondary cache accesses, during which a corresponding tag from the cache tag store is compared in the processor against the required memory address to determine if the data is located in the secondary cache. If the data is not in the secondary cache, the memory controller asserts the appropriate signals to obtain the data from memory. Because some of the address bits are fed directly to the memory, the setup time for memory control signals can be satisfied during the comparison of the cache data tag.
    Type: Grant
    Filed: November 27, 1995
    Date of Patent: September 3, 1996
    Assignee: Digital Equipment Corporation
    Inventor: Mark B. Rosenbluth
  • Patent number: 5539894
    Abstract: A sector cache tag structure for a computer system with a cache memory and a maximum amount of system memory is disclosed. Upon initial power-up of the computer system, the amount of system memory installed in the computer system is determined. A minimum number of sub-blocks for the cache memory is selected such that when less than the maximum amount of system memory is installed, fewer sub-blocks are selected for each block in the cache memory. Based on the optimal number of sub-blocks selected for the amount of installed memory, a plurality of cache tags, block valid bits and sub-block valid bits are stored. The number of cache tags and block valid bits is equivalent to the number of blocks in the cache memory, and the number of sub-block valid bits is equal to the number of sub-blocks. The cache tags are stored in a cache tag random access memory (RAM).
    Type: Grant
    Filed: April 20, 1993
    Date of Patent: July 23, 1996
    Assignee: Sun Microsystems, Inc.
    Inventor: Thomas Webber
  • Patent number: 5535364
    Abstract: An adaptive method allocates RAM between procedures having both higher and lower priorities. The RAM is provided with first and second portions, the first portion for assignment to higher priority procedures and the second portion for assignment to lower priority procedures, higher priority procedures being able to access also the second portion of RAM. The adaptive method comprises the steps of: responding to a request for allocation of RAM to a higher priority procedure by determining if RAM is available from the first portion and, if not, allocating RAM from the second portion to the higher priority procedure. The method enables allocation of RAM from the second portion to a lower priority procedure when available RAM in the first portion exceeds a first threshold level.
    Type: Grant
    Filed: April 12, 1993
    Date of Patent: July 9, 1996
    Assignee: Hewlett-Packard Company
    Inventors: Mark F. Resman, William E. Egbert, Dale A. Mack
  • Patent number: 5526511
    Abstract: The disclosure relates to a cache management method for a post-store cache. Recently referenced units of storage in the cache are identified and a round robin cache replacement method is generally used to select a unit of storage for replacement if the unit of storage has not been recently referenced. Recently used segments are identified by maintaining a Recently Used Zone ahead of the storage location presently considered for replacement. For each reference to a unit of storage in the cache which results in a miss, a portion of the cache is scanned for units of storage to destage.
    Type: Grant
    Filed: December 23, 1993
    Date of Patent: June 11, 1996
    Assignee: Unisys Corporation
    Inventors: Robert E. Swenson, Kevin W. Bengtson
  • Patent number: 5524235
    Abstract: An arbiter circuit for controlling access to the main memory for requests asserted by the microprocessor, the refresh controller and PCI bus masters. Generally, the priority of the memory requests are as follows, with some exceptions: (1) second refresh request; (2) processor-to-memory write request; (3) memory-to-processor read request; (4) PCI-to-memory write request; (5) memory-to-PCI read request; and (6) first refresh request. The second refresh request indicates that two refreshes are outstanding. When that occurs, both outstanding refresh requests are assigned the highest priority. The processor-to-memory write request is always higher in priority than other memory requests except the second refresh. However, under certain conditions, the processor-to-memory write requests is held off to allow other cycles to proceed. The memory-to-processor read request is generally higher in priority than the PCI write and read requests, unless certain conditions occur to override that priority.
    Type: Grant
    Filed: October 14, 1994
    Date of Patent: June 4, 1996
    Assignee: Compaq Computer Corporation
    Inventors: John E. Larson, Michael Moriarty, Michael J. Collins, Gary W. Thome
  • Patent number: 5511180
    Abstract: Disclosed are a circuit and method for dynamically determining cache memory size. The method comprises the steps of (1) writing a replacement data pattern into a first addressable location of a cacheable portion of addressable space, thereby placing the replacement data pattern into a corresponding first addressable location in a cache memory and setting a tag in the first addressable location, (2) accessing an assumed number of remaining addressable locations in the portion of the addressable space thereby setting tags in each of the remaining addressable locations and (3) reading the first addressable location in the cache memory to determine whether the replacement data pattern remains in the first addressable location, the cache memory being of an assumed size if the replacement data pattern is not in the first addressable location in the cache memory. The circuit and method are able to size cache memory without reference to cache size data stored in cache controllers or hardware timers.
    Type: Grant
    Filed: April 6, 1993
    Date of Patent: April 23, 1996
    Assignee: Dell USA, L.P.
    Inventor: Eric W. Schieve