Patents Assigned to VIA-Cyrix, Inc.
  • Patent number: 7594103
    Abstract: A pipeline processing microprocessor includes a storage unit for storing instructions and a fetch unit for requesting and fetching an instruction from the instructions in the storage unit. Upon an interrupt condition, the fetch unit eliminates from a request queue a previously requested instruction that precedes the interrupt condition.
    Type: Grant
    Filed: November 15, 2002
    Date of Patent: September 22, 2009
    Assignee: VIA-Cyrix, Inc.
    Inventors: Paul J. Patchen, William V. Miller
  • Patent number: 7194601
    Abstract: A processor includes first decoder logic capable of decoding a plurality of encoded instructions comprising a first instruction set, the first decoder logic having an input to receive an encoded instruction output from the fetch logic. The processor also includes second decoder logic capable of decoding a plurality of encoded instructions comprising a second instruction set, the second decoding logic having an input to receive an encoded instruction output from the fetch logic. Finally, the processor includes decoder control logic configured to selectively control active operation of the first decoder logic and the second decoder logic. In operation, the decoder control logic operates such that when the first decoder logic is decoding an instruction then the second decoder logic is operated in a lower-power, inactive mode. Likewise, when the second decoder logic is decoding an instruction then the first decoder logic is operated in a lower-power, inactive mode.
    Type: Grant
    Filed: April 3, 2003
    Date of Patent: March 20, 2007
    Assignee: VIA-Cyrix, Inc
    Inventor: Charles F. Shelor
  • Patent number: 7177981
    Abstract: A method and system is disclosed for minimizing data array accesses during a read operation in a cache memory. The cache memory has one or more tag arrays and one or more data arrays. After accessing each tag array, a selected data array is identified, and subsequently activated. At least one predetermined data entry from the activated data array is accessed, wherein all other data arrays are deactivated during the read operation. In another example, the cache memory is divided into multiple sub-groups so that only a particular sub-group is involved in a memory read operation. By deactivating any many circuits as possible throughout the read operation, the power consumption of the cache memory is greatly reduced.
    Type: Grant
    Filed: May 9, 2003
    Date of Patent: February 13, 2007
    Assignee: VIA-Cyrix, Inc.
    Inventor: Timothy D. Davis
  • Patent number: 7143243
    Abstract: A cache memory is disclosed with reduced tag array searches for sequential memory accesses. The cache memory has components such as at least one tag array, at least one data array associated with the tag array, a tag read control logic module for controlling a tag array search, a comparator associated with the tag array, and a storage module for storing a match result of the comparator while processing a first memory access request that accesses a first data address in a first cacheline of the data array. The stored match result is used for a second memory access request that intends to access a second data address sequential to the first data address, thereby avoiding searching the tag array for the second memory access request.
    Type: Grant
    Filed: May 29, 2003
    Date of Patent: November 28, 2006
    Assignee: VIA-Cyrix, Inc.
    Inventor: William V. Miller
  • Patent number: 7130988
    Abstract: A system and method for handling a status change in a pipeline microprocessor. The pipeline microprocessor determines, at the decode unit, if an instruction is a status instruction. If the instruction is determined to be a status instruction, the decode unit delays the start of the following instruction a sufficient number of clock cycles to allow the status change to propagate through the system pipeline.
    Type: Grant
    Filed: November 15, 2002
    Date of Patent: October 31, 2006
    Assignee: Via-Cyrix, Inc.
    Inventor: Charles F. Shelor
  • Patent number: 7024544
    Abstract: The present invention is generally directed to an apparatus and method for accessing registers within a processor. In accordance with one embodiment, an apparatus and method are provided for a processor in which at least two separate indicia (such as register select lines, register bank identifiers, processor mode identifiers, etc.) are utilized to uniquely identify and access a processor register. In accordance with this embodiment, bit lines of the separate indicia are encoded into a single, mapped set of signal lines, and these encoded signal lines are used to access the register.
    Type: Grant
    Filed: June 24, 2003
    Date of Patent: April 4, 2006
    Assignee: VIA-Cyrix, Inc.
    Inventor: Charles F. Shelor
  • Patent number: 7013383
    Abstract: The present invention is generally directed to an apparatus and method for performing a partial flush of a processor pipeline in response to exceptions (e.g., interrupts). In accordance with an aspect of one embodiment a processor is provided with logic that operates to flush only limited stages of a processor pipepline (e.g., stages between the current instruction and the pending interrupt) if the execution of a current instruction will impact the execution of a pending interrupt (e.g., if the current instruction is a branch, if the current instruction would cause the processor to enter a mode that disables the pending interrupt, etc.). In accordance with another aspect of this embodiment, a method is provided for performing a partial flush of processor pipeline if the execution of a current instruction would impact the execution of a pending interrupt.
    Type: Grant
    Filed: June 24, 2003
    Date of Patent: March 14, 2006
    Assignee: VIA-Cyrix, Inc.
    Inventor: Charles F. Shelor
  • Patent number: 6983359
    Abstract: A processor and method for handling out-of-order instructions is provided. In one embodiment, the processor comprises instruction pre-fetch logic configured to pre-fetch instructions from memory. The processor further comprises instruction information logic configured to store information about instructions fetched from memory. The processor further comprises control logic configured to control temporary storage of the information related to a pre-fetched instruction if there is currently an active memory access and the currently pre-fetched instruction is an out-of-order instruction. The method pre-fetches the out-of-order in instruction, temporarily stores information associated with the out-of-order instruction in a storage location, and if the memory access completes without encountering a data fault, then saves the temporarily stored information and processes the pre-fetched instruction.
    Type: Grant
    Filed: August 13, 2003
    Date of Patent: January 3, 2006
    Assignee: VIA-Cyrix, Inc.
    Inventor: William V. Miller
  • Patent number: 6844767
    Abstract: A power saving hierarchical clock gating circuit includes a first level clock gate, a plurality of second level clock gates connected to the first level clock gate, and a plurality of third level clock gates for selectively providing a clock signal to a functional block. Each third level clock gate is connected between a second level clock gate and a register, or other low level device, of the functional block for selectively providing the clock signal to the register. Accordingly, the clock signal is conveyed from the first level clock gate through a second level and a third level clock gate to a register when the corresponding first, second, and third level clock gates are activated by associated decision logic.
    Type: Grant
    Filed: June 18, 2003
    Date of Patent: January 18, 2005
    Assignee: VIA-Cyrix, Inc.
    Inventor: Charles F. Shelor
  • Patent number: 6842052
    Abstract: A system for allowing an asynchronous clock signal to be selected from a plurality of asynchronous clock signals without causing glitches. In the system, a requestor is connected to control signals. The control signals indicate to the requestor which asynchronous clock signal, of the two or more clock signals, to request. The requestor informs a selector of the request. The selector determines which asynchronous clock signal was selected. The selected asynchronous clock is then detected by the detector. The detector feeds the selected asynchronous clock signal to a signal output. The signal output releases the selected asynchronous clock signal.
    Type: Grant
    Filed: June 11, 2002
    Date of Patent: January 11, 2005
    Assignee: VIA-Cyrix, Inc.
    Inventor: William V. Miller
  • Publication number: 20040255103
    Abstract: A method and system for terminating unnecessary processing of at least one multi-clock conditional instruction in a processor. The conditional instruction is processed through a processing pipeline including at least a decode stage, an execute stage, and one or more intermediate processing stages therebetween. It is determined whether the conditional instruction is executable in the execute stage based on whether one or more conditions are fulfilled. If the conditional instruction is being processed in both the decode and execute stages, the conditional instruction is terminated in the decode stage if the conditional instruction is not to be executed in the execute stage. The conditional instruction may also be terminated in the intermediate processing stages. Early termination of such a conditional instruction saves processing resources and reduces power consumption of the processor.
    Type: Application
    Filed: June 11, 2003
    Publication date: December 16, 2004
    Applicant: VIA-Cyrix, Inc.
    Inventors: Richard L. Duncan, Charles F. Shelor
  • Publication number: 20040243764
    Abstract: A cache memory is disclosed with reduced tag array searches for sequential memory accesses. The cache memory has components such as at least one tag array, at least one data array associated with the tag array, a tag read control logic module for controlling a tag array search, a comparator associated with the tag array, and a storage module for storing a match result of the comparator while processing a first memory access request that accesses a first data address in a first cacheline of the data array. The stored match result is used for a second memory access request that intends to access a second data address sequential to the first data address, thereby avoiding searching the tag array for the second memory access request.
    Type: Application
    Filed: May 29, 2003
    Publication date: December 2, 2004
    Applicant: VIA-Cyrix, Inc.
    Inventor: William V. Miller
  • Publication number: 20040230781
    Abstract: A method and system is disclosed for predicting whether a conditional instruction is to be executed in a processor. The processor processes instructions through processing stages including at least a decode stage, an execute stage, and one or more intermediate processing stages therebetween. First, a current condition status of the processor is detected, wherein the condition status shows whether one or more conditions for executing the conditional instruction have been satisfied. After detecting whether one or more associated instructions as being processed during the intermediate processing stages have impacted or will impact the conditions to be satisfied, it is determined whether the conditional instruction should be terminated at the decode stage based on the detected current condition status and the detected impact on the conditions due to the processing of the associated instructions.
    Type: Application
    Filed: May 16, 2003
    Publication date: November 18, 2004
    Applicant: VIA-Cyrix, Inc.
    Inventors: Charles F. Shelor, Richard L. Duncan
  • Publication number: 20040225839
    Abstract: A method and system is disclosed for minimizing data array accesses during a read operation in a cache memory. The cache memory has one or more tag arrays and one or more data arrays. After accessing each tag array, a selected data array is identified, and subsequently activated. At least one predetermined data entry from the activated data array is accessed, wherein all other data arrays are deactivated during the read operation. In another example, the cache memory is divided into multiple sub-groups so that only a particular sub-group is involved in a memory read operation. By deactivating any many circuits as possible throughout the read operation, the power consumption of the cache memory is greatly reduced.
    Type: Application
    Filed: May 9, 2003
    Publication date: November 11, 2004
    Applicant: VIA-Cyrix, Inc.
    Inventor: Timothy D. Davis
  • Publication number: 20040098564
    Abstract: A system and method for handling a status change in a pipeline microprocessor. The pipeline microprocessor determines, at the decode unit, if an instruction is a status instruction. If the instruction is determined to be a status instruction, the decode unit delays the start of the following instruction a sufficient number of clock cycles to allow the status change to propagate through the system pipeline.
    Type: Application
    Filed: November 15, 2002
    Publication date: May 20, 2004
    Applicant: VIA-Cyrix, Inc.
    Inventor: Charles F. Shelor
  • Publication number: 20030227300
    Abstract: A system for allowing an asynchronous clock signal to be selected from a plurality of asynchronous clock signals without causing glitches. In the system, a requestor is connected to control signals. The control signals indicate to the requestor which asynchronous clock signal, of the two or more clock signals, to request. The requestor informs a selector of the request. The selector determines which asynchronous clock signal was selected. The selected asynchronous clock is then detected by the detector. The detector feeds the selected asynchronous clock signal to a signal output. The signal output releases the selected asynchronous clock signal.
    Type: Application
    Filed: June 11, 2002
    Publication date: December 11, 2003
    Applicant: VIA-Cyrix, Inc.
    Inventor: William V. Miller
  • Patent number: 6442635
    Abstract: A processing system having a virtual subsystem architecture employs a reentrant system management mode mechanism and device handlers along with remappable hardware resources to simulate physical subsystems, all transparent to application programs executing on the processing system.
    Type: Grant
    Filed: November 16, 1998
    Date of Patent: August 27, 2002
    Assignee: VIA-Cyrix, Inc.
    Inventors: Thomas B. Brightman, Frederick S. Dunlap, Andrew D. Funk
  • Patent number: 6412063
    Abstract: For use in a processor having a pipeline of insufficient width to convey all operands of a given multiple-operand instruction concurrently, a system for, and method of, processing the multiple-operand instruction. In one embodiment, the system includes: (1) node creation circuitry that creates at least first and second nodes for the multiple-operand instruction, the first node being empty and containing at least one of the operands and (2) node transmission circuitry, coupled to the node creation circuitry, that transmits the first and second nodes sequentially through the pipeline. All the operands are subsequently concurrently available within an execution stage of the pipeline for execution of the multiple-operand instruction.
    Type: Grant
    Filed: April 2, 1999
    Date of Patent: June 25, 2002
    Assignee: VIA-Cyrix, Inc.
    Inventor: Nicholas G. Samra
  • Patent number: 6381622
    Abstract: A system and method of expediting bit scan instructions in a microprocessor is disclosed which employs an execution unit having zero detectors organized along predetermined boundaries for detecting in parallel, the number of leading or trailing zeros in a source operand and for writing a destination index to indicate the first non-zero bit position.
    Type: Grant
    Filed: November 13, 1996
    Date of Patent: April 30, 2002
    Assignee: VIA-Cyrix, Inc.
    Inventor: Milton Lie
  • Patent number: RE39385
    Abstract: A method for approximating mathematical functions using polynomial expansions is implemented in a numeric processing system (10) which comprises a control and timing circuit (18), a microprogram store (20) and a multiplier circuit (34). The multiplier circuit (34) may comprise a rectangular aspect ratio multiplier circuit (40) having an additional ADDER INPUT to enable the repeated evaluation of first order polynomials to evaluate polynomial expansions associated with each mathematical function. A constant store (28) is used to store predetermined coefficients for the polynomial expansion associated with each mathematical functions function. The microprogram store (20) is used to store argument transformation routines, polynomial expansions and result transformation routines associated with each mathematical function. The questions raised in reexamination request No. 90/004,138, filed Feb.
    Type: Grant
    Filed: August 19, 1993
    Date of Patent: November 7, 2006
    Assignee: Via-Cyrix, Inc.
    Inventors: Thomas B. Brightman, Willard S. Briggs, Warren E. Ferguson