Patents by Inventor Donald Soltis

Donald Soltis 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: 20060155973
    Abstract: Multithreaded hardware systems and methods are disclosed. One embodiment of a system may comprise a multithreaded processor comprising a register file having N hardware threads, where N is an integer greater than or equal to one, and an offline storage structure having M hardware threads, where M is an integer greater than or equal to one. The multithreaded processor system may further comprise a thread control that transfers register values associated with at least one of the N hardware threads to registers of at least one of the M hardware threads and transfers register values of at least of one of the M hardware threads to registers of at least one of the N hardware threads.
    Type: Application
    Filed: January 13, 2005
    Publication date: July 13, 2006
    Inventor: Donald Soltis
  • Publication number: 20060112257
    Abstract: Techniques are disclosed for generating signatures representing modifications to architected state in a microprocessor. A plurality of signals representing a plurality of architected states of a goal microprocessor may be combined to produce a goal architected state signature of the goal microprocessor. The goal microprocessor may be actual or simulated and the plurality of architected states may be actual or simulated states. A plurality of signals representing a plurality of architected states of a test microprocessor may be combined to produce a test architected state signature of the test microprocessor. The goal signature may be compared to the test signature to determine whether the test microprocessor is faulty.
    Type: Application
    Filed: November 12, 2004
    Publication date: May 25, 2006
    Inventors: Stephen Undy, Donald Soltis
  • Publication number: 20060064528
    Abstract: At least one entry in an original interrupt vector table is replaced with an instruction set to handle access to a privileged resource. An operating system privilege level is modified to one or more resources. Subsequent access to the privileged resource causes an interrupt. Processing of the interrupt is directed to the instruction set to handle access to the privileged resource.
    Type: Application
    Filed: September 17, 2004
    Publication date: March 23, 2006
    Inventors: Donald Soltis,, Dale Morris
  • Publication number: 20060031679
    Abstract: In a computer system including a plurality of resources, techniques are disclosed for receiving a request from a software program to access a specified one of the plurality of resources, determining whether the specified one of the plurality of resources is a protected resource, and, if the specified one of the plurality of resources is a protected resource, for denying the request if the computer system is operating in a protected mode of operation, and processing the request based on access rights associated with the software program if the computer system is not operating in the protected mode of operation.
    Type: Application
    Filed: August 3, 2004
    Publication date: February 9, 2006
    Inventors: Donald Soltis, Rohit Bhatia, Eric DeLano
  • Publication number: 20060031672
    Abstract: In one embodiment of the present invention, a computer-implemented method is provided for use in a computer system including a plurality of resources. The plurality of resources include protected resources and unprotected resources. The unprotected resources include critical resources and non-critical resources. The method includes steps of: (A) receiving a request from a software program to access a specified one of the unprotected resources; (B) granting the request if the computer system is operating in a non-protected mode of operation; and (C) if the computer system is operating in a protected mode of operation, performing a step of denying the request if the computer system is not operating in a protected diagnostic mode of operation.
    Type: Application
    Filed: August 3, 2004
    Publication date: February 9, 2006
    Inventors: Donald Soltis, Rohit Bhatia, Eric DeLano, Bill Greene, Amy Santoni
  • Publication number: 20060004962
    Abstract: A cache memory system capable of adaptively accommodating various memory line sizes comprises cache memory and cache logic. The cache memory has sets of ways. The cache logic is configured to request a memory line in response to a cache miss, and the memory line represents a portion of a way line. The cache logic is configured to select one of the ways based on which portion of the way line is represented by the memory line. The cache logic is further configured to store the memory line in the selected way.
    Type: Application
    Filed: July 2, 2004
    Publication date: January 5, 2006
    Inventors: Shawn Walker, Donald Soltis, Karl Brummel
  • Publication number: 20050268189
    Abstract: In a device testing arrangement, a data set is selected from a set of multiple data sets, and a test kernel is selected from a set of multiple test kernels. The test kernel includes one or more instructions that utilize data. The test kernel is executed with at least some of the data from the data set, which causes one or more inputs to be provided to a device under test. A test result is obtained as one or more results generated by the device under test in response to the executing. The data set and kernel selection, execution, and result obtaining processes are repeated for one or more remaining test kernels in the set of multiple test kernels and for one or more remaining data sets in the set of multiple data sets.
    Type: Application
    Filed: May 28, 2004
    Publication date: December 1, 2005
    Inventor: Donald Soltis
  • Publication number: 20050240793
    Abstract: In one aspect of the present invention, a circuit is provided which implements an instruction set architecture defining a first instruction group, a second instruction group to enter a high-reliability mode of operation, and a third instruction group to enter a non-high-reliability mode of operation. The circuit includes means for causing the circuit to enter the high-reliability mode of operation in response to receiving the second instruction group; means for causing the circuit to enter the non-high-reliability mode of operation in response to receiving the third instruction group; first execution means for executing the first instruction group in the high-reliability mode of operation if the circuit is in the high-reliability mode of operation; and second execution means for executing the first instruction group without in the non-high-reliability mode of operation if the circuit is in the non-high-reliability mode of operation.
    Type: Application
    Filed: April 6, 2004
    Publication date: October 27, 2005
    Inventors: Kevin Safford, Donald Soltis
  • Publication number: 20050240810
    Abstract: A system is provided which includes a microprocessor comprising a first processing unit to generate a first output signal and a second processing unit to generate a second output signal, and comparison means, coupled to the microprocessor, to detect whether the first output signal differs from the second output signal.
    Type: Application
    Filed: April 6, 2004
    Publication date: October 27, 2005
    Inventors: Kevin Safford, Donald Soltis, Eric Delano
  • Publication number: 20050198538
    Abstract: The invention controls maximum average power dissipation by stalling high power instructions through the pipeline of a pipelined processor. A power dissipation controller stalls the high power instructions in order to control the processor's maximum average power dissipation. Preferably, the controller is modeled after a capacitive system with a constant output rate and a throttled input rate: the output rate represents the steady state maximum average power dissipation; while the input rate is stalled based upon current capacity, representing thermal response time. At start-up, the capacity is initialized. Yet for each high power instruction, the capacity increases by a weighted value. Each clock capacity is also decreased by a variable output rate. In particular, a low power operation is inserted to the stage execution circuit where the stall is desired, creating a low power state for that circuit. This stall effectively creates a “hole” at that pipeline stage, thus temporarily reducing power dissipation.
    Type: Application
    Filed: August 20, 2003
    Publication date: September 8, 2005
    Inventors: Donald Soltis, Glenn Colon-Bonet
  • Publication number: 20050138478
    Abstract: Microprocessor that includes a mechanism for detecting soft errors. The processor includes an instruction fetch unit for fetching an instruction and an instruction decoder for decoding the instruction. The mechanism for detecting soft errors includes duplication hardware for duplicating the instruction and comparison hardware. The processor further includes a first execution unit for executing the instruction in a first execution cycle and the duplicated instruction in a second execution cycle. The comparison hardware compares the results of the first execution cycle and the results of the second execution cycle. The comparison hardware can include an exception unit for generating an exception (e.g., raising a fault) when the results are not the same. The processor also includes a commit unit for committing one of the results when the results are the same.
    Type: Application
    Filed: November 14, 2003
    Publication date: June 23, 2005
    Inventors: Kevin Safford, Donald Soltis, Stephen Undy, James Gibson, Eric Delano
  • Publication number: 20050108509
    Abstract: A processor that includes an in-order execution architecture for executing at least two instructions per cycle (e.g., 2n instructions are processed per cycle, where n is an integer greater than or equal to one) and at least two symmetric execution units. The processor includes an instruction fetch unit for fetching n instructions (where n is an integer greater than or equal to one) and an instruction decoder for decoding the n instruction. The error detection mechanism includes duplication hardware for duplicating the n instructions into a first bundle of n instructions and a second bundle of n instructions. A first execution unit for executing the first bundle of instructions in a first execution cycle, and a second symmetric execution unit for executing the second bundle of instructions in the first execution cycle are provided. The error detection mechanism also includes comparison hardware for comparing the results of the first execution unit and the results of the second execution unit.
    Type: Application
    Filed: November 13, 2003
    Publication date: May 19, 2005
    Inventors: Kevin Safford, Donald Soltis, Stephen Undy, James Gibson, Eric Delano
  • Publication number: 20050091652
    Abstract: Virtual-machine-monitor operation and implementation is facilitated by number of easily implemented features and extensions added to the features of a processor architecture. These features, one or more of which are used in various embodiments of the present invention, include a vmsw instruction that provides a means for transitioning between virtualization mode and non-virtualization mode without an interruption, a virtualization fault that faults on an attempt by a priority-0 routine in virtualization mode attempting to execute a privileged instruction, and a flexible highest-implemented-address mechanism to partition virtual address space into a virtualization address space and a non-virtualization address space.
    Type: Application
    Filed: October 28, 2003
    Publication date: April 28, 2005
    Inventors: Jonathan Ross, Dale Morris, Donald Soltis, Rohit Bhatia, Eric Delano