Patents by Inventor Ashley Saulsbury

Ashley Saulsbury 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).

  • Publication number: 20020032710
    Abstract: According to the invention, a matrix of elements is processed in a processor. A first subset of matrix elements is loaded from a first location and a second subset of matrix elements is loaded from a second location. A third subset of matrix elements is stored in a first destination and a fourth subset of matrix elements is stored in a second destination. The loading and storing steps result from the same instruction issue.
    Type: Application
    Filed: March 8, 2001
    Publication date: March 14, 2002
    Inventors: Ashley Saulsbury, Daniel S. Rice, Michael W. Parkin, Nyles Nettleton
  • Publication number: 20020032849
    Abstract: According to the invention, a processing core (12) comprising a processing pipeline (100) having N-number of processing paths (56), each of which process instructions (54) on M-bit data words. In addition, the processing core (12) includes one or more register files (60), each preferably having Q-number of registers which are M-bits wide. Preferably, one of the Q-number of registers in at least one of the register files (60) is a program counter register dedicated to hold a program counter, and one of the Q-number of registers in at least one of the register files is a zero register dedicated to hold a zero value. In this manner, program jumps can be executed by adding values to the program counter in the program counter register, and memory address values can be calculated by adding values to the program counter stored in the program counter register or to the zero value stored in the zero register.
    Type: Application
    Filed: March 8, 2001
    Publication date: March 14, 2002
    Inventors: Ashley Saulsbury, Nyles Nettleton, Michael Parkin, David Emberson
  • Publication number: 20020029332
    Abstract: According to the invention, a method for processing data related to an array of elements is disclosed. In one embodiment, a method for processing data related to an array of elements is disclosed. In the process, a first value is loaded from a first location, and a second value is loaded from a second location. The first and second values are compared to each other. A predetermined value is optionally stored at a destination based upon the outcome of the comparison.
    Type: Application
    Filed: March 8, 2001
    Publication date: March 7, 2002
    Inventor: Ashley Saulsbury
  • Publication number: 20020023201
    Abstract: According to the invention, a processing core (12) comprising one or more processing pipelines (100) having N-number of processing paths (56), each of which process instructions (54) on M-bit data words. In addition, the processing core (12) includes a plurality of register files (60), each preferably having Q-number of registers which are M-bits wide. Preferably, every two of the processing paths (56) share one register file (60). A processing instruction (52) preferably comprises N-number of P-bit instructions (54) appended together to form a very long instruction word (VLIW), and the N-number of processing paths (56) preferably process the N-number of P-bit instructions (54) in parallel. In accordance with one preferred embodiment of the invention, M is 64, Q is 64 and P is 32. Accordingly, the N-number of processing paths (56), each process 32-bit instructions (54) on 64-bit data words, and the plurality of register files (60) each have 64 registers which are 64-bits wide.
    Type: Application
    Filed: March 8, 2001
    Publication date: February 21, 2002
    Inventors: Ashley Saulsbury, Michael Parkin, Daniel S. Rice
  • Publication number: 20020019928
    Abstract: According to the invention, a processing core that executes a compare instruction is disclosed. The processing core includes a register file, comparison logic, decode logic, and a store path. Included in the register file are a number of general-purpose registers. The general-purpose registers include a first input operand register, a second input operand register and an output operand register. Comparison logic is coupled to the register file. The comparison logic tests for at least two of the following relationships: less than, equal to, greater than and no valid relationship. The decode logic selects the output operand register from the plurality of general-purpose registers. The store path extends between the comparison logic and the selected output operand register.
    Type: Application
    Filed: March 8, 2001
    Publication date: February 14, 2002
    Inventor: Ashley Saulsbury
  • Patent number: 6314510
    Abstract: A microprocessor with reduced context switching overhead and a corresponding method is disclosed. The microprocessor comprises a working register file that comprises dirty bit registers and working registers. The working registers including one or more corresponding working registers for each of the dirty bit registers. The microprocessor also comprises a decoder unit that is configured to decode an instruction that has a dirty bit register field specifying a selected dirty bit register of the dirty bit registers. The decoder unit is configured to generate decode signals in response. Furthermore, the working register file is configured to cause the selected dirty bit register to store a new dirty bit in response to the decode signals. The new dirty bit indicates that each operand stored by the one or more corresponding working registers is inactive and no longer needs to be saved to memory if a new context switch occurs.
    Type: Grant
    Filed: April 14, 1999
    Date of Patent: November 6, 2001
    Assignee: Sun Microsystems, Inc.
    Inventors: Ashley Saulsbury, Daniel S. Rice
  • Patent number: 6199142
    Abstract: An integrated processor/memory device comprising a main memory, a CPU, and a full width cache. The main memory comprises main memory banks. Each of the main memory banks stores rows of words. The rows are a predetermined number of words wide. The cache comprises cache banks. Each of the cache banks stores one or more cache lines of words. Each of the cache lines has a corresponding row in the corresponding main memory bank. The cache lines are the predetermined number of words wide. When the CPU issues an address in the address space of the corresponding main memory bank, the cache bank determines from the address and the tags of the cache lines whether a cache bank hit or a cache miss has occurred in the cache bank. When a cache bank miss occurs, the cache bank replaces a victim cache line of the cache lines with a new cache line that comprises the corresponding row of the corresponding memory bank specified by the issued address.
    Type: Grant
    Filed: July 1, 1996
    Date of Patent: March 6, 2001
    Assignee: Sun Microsystems, Inc.
    Inventors: Ashley Saulsbury, Andreas Nowatzyk, Fong Pong
  • Patent number: 6128702
    Abstract: An integrated processor/memory device comprising a main memory, a CPU, a victim cache, and a primary cache. The main memory comprises main memory banks. The victim cache stores victim cache sub-lines of words. Each of the victim cache sub-lines has a corresponding memory location in the main memory. When the CPU issues an address in the address space of the main memory, the victim cache determines whether a victim cache hit or miss has occurred in the victim cache. And, when a victim cache miss occurs, the victim cache replaces a selected victim cache sub-line of the victim cache sub-lines in the victim cache with a new victim cache sub-line. The primary cache comprises primary cache banks. Each of the primary cache banks stores one or more cache lines of words. Each cache line has a corresponding memory location in the corresponding main memory bank.
    Type: Grant
    Filed: January 8, 1999
    Date of Patent: October 3, 2000
    Assignee: Sun Microsystems, Inc.
    Inventors: Ashley Saulsbury, Andreas Nowatzyk, Fong Pong
  • Patent number: 5900011
    Abstract: An integrated processor/memory device comprising a main memory, a CPU, a victim cache, and a primary cache. The main memory comprises main memory banks. The victim cache stores victim cache sub-lines of words. Each of the victim cache sub-lines has a corresponding memory location in the main memory. When the CPU issues an address in the address space of the main memory, the victim cache determines whether a victim cache hit or miss has occurred in the victim cache. And, when a victim cache miss occurs, the victim cache replaces a selected victim cache sub-line of the victim cache sub-lines in the victim cache with a new victim cache sub-line. The primary cache comprises primary cache banks. Each of the primary cache banks stores one or more cache lines of words. Each cache line has a corresponding memory location in the corresponding main memory bank.
    Type: Grant
    Filed: July 1, 1996
    Date of Patent: May 4, 1999
    Assignee: Sun Microsystems, Inc.
    Inventors: Ashley Saulsbury, Andreas Nowatzyk, Fong Pong