Patents by Inventor Rajasekhar Cherabuddi

Rajasekhar Cherabuddi has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 5996048
    Abstract: A cache architecture with a first level cache and a second level cache, with the second level cache lines including an inclusion vector which indicates which portion of that line are stored in the first level cache. In addition, an instruction/data bit in the inclusion vector indicates whether a portion of that line is in the instruction cache at all. Thus, when a snoop is done to the level two cache, additional snoops to the level one cache only need to be done for those lines which are indicated as present by the inclusion vector.
    Type: Grant
    Filed: June 20, 1997
    Date of Patent: November 30, 1999
    Assignee: Sun Microsystems, Inc.
    Inventors: Rajasekhar Cherabuddi, Ricky C. Hetherington
  • Patent number: 5944810
    Abstract: In a superscalar processor, multiple instructions are executed in parallel to obtain multiple execution results, and the multiple execution results are stored in a working register file. Each execution result in the working register file has at least one status bit associated therewith which identifies the execution result as valid data. The multiple execution results contained in the working register data then retired by changing the status bits associated with each execution result to identify the execution result as an architectural copy of the data. In this manner, the speculative data is retired without data movement of the speculative data, thus reducing a number of ports needed in the superscalar processor.
    Type: Grant
    Filed: June 27, 1997
    Date of Patent: August 31, 1999
    Assignee: Sun Microsystems, Inc.
    Inventor: Rajasekhar Cherabuddi
  • Patent number: 5938761
    Abstract: One embodiment of the present invention provides a method and an apparatus for predicting the target of a branch instruction. This method and apparatus operate by using a translation lookaside buffer (TLB) to store page numbers for predicted branch target addresses. In this embodiment, a branch target address table stores a small index to a location in the translation lookaside buffer, and this index is used retrieve a page number from the location in the translation lookaside buffer. This page number is used as the page number portion of a predicted branch target address. Thus, a small index into a translation lookaside buffer can be stored in a predicted branch target address table instead of a larger page number for the predicted branch target address. This technique effectively reduces the size of a predicted branch target table by eliminating much of the space that is presently wasted storing redundant page numbers.
    Type: Grant
    Filed: November 24, 1997
    Date of Patent: August 17, 1999
    Assignee: Sun Microsystems
    Inventors: Sanjay Patel, Adam R. Talcott, Rajasekhar Cherabuddi
  • Patent number: 5884100
    Abstract: A single-chip central processing unit (CPU) includes a processing core and a complete cache-coherent I/O system that operates asynchronously with the processing core. An internal communications protocol uses synchronizers and data buffers to transfer information between a clock domain of the processing core and a clock domain of the I/O system. The synchronizers transfer control and handshake signal between clock domains, but the data buffer transfers data without input or output synchronization circuitry for data bits. Throughput for the system is high because the processing unit has direct access to I/O system so that no delays are incurred for complex mechanisms which are commonly employed between a CPU and an external I/O chip-set. Throughput is further increased by holding data from one DMA transfer in the data buffer for use in a subsequent DMA transfer.
    Type: Grant
    Filed: June 6, 1996
    Date of Patent: March 16, 1999
    Assignee: Sun Microsystems, Inc.
    Inventors: Kevin B. Normoyle, Michael A. Csoppenszky, Jaybharat Boddu, Jui-Cheng Su, Alex S. Han, Rajasekhar Cherabuddi, Tzungren Tzeng
  • Patent number: 5860117
    Abstract: A central processing unit of a computer includes an external cache controller and a primary memory controller. The external cache controller generates a primary memory read request and a primary memory write request in response to an external cache miss. The primary memory controller includes an address queue, an eviction buffer, and an eviction buffer logic circuit. The eviction buffer logic circuit selectively stores the primary memory write request in the eviction buffer and stores the primary memory read request in the address queue. When subsequent primary memory read requests are received at the primary memory controller, the eviction buffer logic circuit routes them to the address queue. The primary memory write request in the eviction buffer is passed to the address queue when the eviction buffer logic circuit identifies an empty queue, meaning there are no pending primary memory write requests.
    Type: Grant
    Filed: May 31, 1996
    Date of Patent: January 12, 1999
    Assignee: Sun Microsystems, Inc.
    Inventor: Rajasekhar Cherabuddi
  • Patent number: 5854761
    Abstract: A cache memory array stores two-way set associative data. An odd set data bank stores odd number sets of the two-way set associative data, where the two ways of each odd number set are aligned horizontally within the odd set data bank. An even set data bank stores even number sets of the two-way set associative data, where the two ways of each even number set are aligned horizontally within the even set data bank. Also, the odd set data bank is aligned horizontally with the even set data bank such that each odd number set is aligned horizontally with a next even number set. The horizontally aligned ways are interleaved for data path width reduction. Set and way selection circuits extract lines of data from the array. The array may be structurally implemented by single-ported RAM cells.
    Type: Grant
    Filed: June 26, 1997
    Date of Patent: December 29, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: Sanjay Patel, Rajasekhar Cherabuddi, Ramesh Panwar, Adam R. Talcott
  • Patent number: 5835947
    Abstract: A central processing unit (CPU) of a computer and a method for reducing memory latencies in a computer memory hierarchy are described. The CPU includes an external cache controller and a primary memory controller. An instruction buffer in the primary memory controller stores an address from a primary memory page corresponding to a previous address request. A comparator circuit of the primary memory controller is used to compare a present address request corresponding to an instruction cache miss signal to the address stored in the instruction buffer. If an instruction buffer hit is achieved, memory latencies associated with the external cache controller and the primary memory controller are avoided. If an instruction buffer miss is experienced, the primary memory controller, under predetermined conditions, stores, in the instruction buffer, an address following an address corresponding to data from a primary memory page specified by the present address request.
    Type: Grant
    Filed: May 31, 1996
    Date of Patent: November 10, 1998
    Assignee: Sun Microsystems, Inc.
    Inventor: Rajasekhar Cherabuddi
  • Patent number: 5829010
    Abstract: Primary memory access times are improved through an efficient technique of aborting and restarting primary memory accesses. A central processing unit of a computer includes an external cache controller to selectively generate an external cache free signal and an external cache busy signal. The central processing unit also includes a primary memory controller with an abort buffer. The primary memory controller includes circuitry to abort a primary memory access in response to the external cache busy signal. The data segment retrieved prior to aborting the primary memory access is stored in the abort buffer. The primary memory controller restarts the primary memory access in response to the external cache free signal. The restarting operation results in the data segment being passed to the external cache controller. Thereafter, the remaining data associated with the primary memory access is retrieved and sent to the external cache controller.
    Type: Grant
    Filed: May 31, 1996
    Date of Patent: October 27, 1998
    Assignee: Sun Microsystems, Inc.
    Inventor: Rajasekhar Cherabuddi
  • Patent number: 5761708
    Abstract: A central processing unit with an external cache controller and a primary memory controller is used to speculatively initiate primary memory access in order to improve average primary memory access times. The external cache controller processes an address request during an external cache latency period and selectively generates an external cache miss signal or an external cache hit signal. If no other primary memory access demands exist at the beginning of the external cache latency period, the primary memory controller is used to speculatively initiate a primary memory access corresponding to the address request. The speculative primary memory access is completed in response to an external cache miss signal. The speculative primary memory access is aborted if an external cache hit signal is generated or a non-speculative primary memory access demand is generated during the external cache latency period.
    Type: Grant
    Filed: May 31, 1996
    Date of Patent: June 2, 1998
    Assignee: Sun Microsystems, Inc.
    Inventors: Rajasekhar Cherabuddi, Anuradha Moudgal, Kevin Normoyle