Patents Represented by Attorney, Agent or Law Firm John L. Maxin
  • Patent number: 5764999
    Abstract: An enhanced system management mode (SMM) includes nesting of SMI (system management interrupt) routines for handling SMI events. Enhanced SMM is implemented in an computer system to support a Virtual System Architecture (VSA) in which peripheral hardware, such as for graphics and/or audio functions, is virtualized (simulated by SMI routines). Reentrant VSA/SMM software (handler) includes VSA/SMI routines invoked either by (a) SMI interrupts, such as from non-virtualized peripheral hardware such as audio FIFO buffers, or (b) SMI traps, such as from accesses to memory mapped or I/O space allocated to a virtualized peripheral function. SMI nesting permits a currently active VSA/SMI routine to be preempted by another (higher priority) SMI event. The SMM memory region includes an SMI header segment and a VSA/SMM software segment--the SMI header segment is organized as a quasi-stack into which nested SMI headers are saved.
    Type: Grant
    Filed: October 10, 1995
    Date of Patent: June 9, 1998
    Assignee: Cyrix Corporation
    Inventors: Christopher G. Wilcox, Joseph F. Baldwin, Xiaoli Y. Mendyke
  • Patent number: 5752274
    Abstract: An address translation unit is disclosed employing a direct-mapped translation lookaside buffer and a relatively small, associative victim translation lookaside buffer for translating linear addresses to physical addresses expediently and avoiding thrashing, without requiring large amounts of hardware and space.
    Type: Grant
    Filed: November 8, 1994
    Date of Patent: May 12, 1998
    Assignee: Cyrix Corporation
    Inventors: Raul A. Garibay, Jr., Marc A. Quattromani, Douglas Beard
  • Patent number: 5742184
    Abstract: An input buffer circuit provides programmable resistors for inputs to a microprocessor and compensates for switching voltage timing differences caused when a selected programmable resistor is utilized for a selected input. In a preferred embodiment, an input buffer circuit has a weak transistor coupled between the input and an operating voltage source or ground, and a compensation circuit including two transistors in series between the operating voltage source or ground, and an output. When the weak transistor is on, thereby raising or lowering the input signal, one of the transistors is also on and the other transistor couples the output to the operating voltage source or ground.
    Type: Grant
    Filed: February 16, 1996
    Date of Patent: April 21, 1998
    Assignee: Cyrix Corporation
    Inventor: Marvin W. Martinez, Jr.
  • Patent number: 5742755
    Abstract: In an .chi.86-compatible processor capable of operating in a protected mode of operation in which privilege levels are assigned to tasks executing therein, an application task being assigned a lowest privilege level and executable in the processor to cause the processor to calculate addresses corresponding to specific locations in a computer memory associated with the processor, the addresses to be in alignment with respect to the computer memory prior to the processor issuing the addresses, a circuit for, and method of, handling sequential alignment faults and a computer system embodying the same.
    Type: Grant
    Filed: February 20, 1996
    Date of Patent: April 21, 1998
    Assignee: Cyrix Corporation
    Inventor: Mark W. Hervin
  • Patent number: 5740416
    Abstract: A branch processing unit (BPU) is used, in an exemplary embodiment, in a superscalar, superpipelined microprocessor compatible with the x86 instruction set architecture. In one embodiment, the BPU includes a target cache and a separate far target cache--the far target cache stores limits and mode bits for far targets stored in the target cache. For each far COF entry in the target cache, an FTC index field stores an index pointing to the corresponding entry in the far target cache. For far COFs that hit in the target cache, the target cache outputs corresponding far target addressing information and the associated FTC index to indirectly access the far target cache to obtain the associated segment limit information.
    Type: Grant
    Filed: February 26, 1996
    Date of Patent: April 14, 1998
    Assignee: Cyrix Corporation
    Inventor: Steven C. McMahan
  • Patent number: 5740410
    Abstract: A processing system includes clock circuitry that statically multiplies/divides a stimulus signal which can then be removed while a resultant product clock is still generated, A cascaded--dual tap delay line is employed having a single phase inversion which is looped back and logically ORed with the first edge of the stimulus signal to induce oscillation. A multiplier/divisor control signal adjusts the "N" times multiplication by disabling the loop after the desired number of pulses is achieved within the period of the stimulus signal. 1/M multiplication is achieved by disabling the loop from oscillating for M stimulus clocks. Multiple frequencies can be dynamically realized on-the-fly without resynchronization by combining delayed clock pulses with a multiplexer.
    Type: Grant
    Filed: December 15, 1995
    Date of Patent: April 14, 1998
    Assignee: Cyrix Corporation
    Inventor: Mark W. McDermott
  • Patent number: 5740398
    Abstract: A superscalar superpipelined microprocessor having a write buffer located between the core and cache is disclosed. The write buffer is controlled to store the results of write operations to memory until such time as the cache becomes available, such as when no high-priority reads are to be performed. The write buffer includes multiple entries that are split into two circular buffer sections for facilitating the interaction with the two pipelines of the core; cross-dependency tables are provided for each write buffer entry to ensure that the data is written from the write buffer to memory in program order, considering the possibility of prior data present in the opposite section. Non-cacheable reads from memory are also ordered in program order with the writing of data from the write buffer. Features for handling speculative execution, detecting and handling data dependencies and exceptions, and performing special write functions (misaligned writes and gathered writes) are also disclosed.
    Type: Grant
    Filed: October 18, 1993
    Date of Patent: April 14, 1998
    Assignee: Cyrix Corporation
    Inventors: Marc A. Quattromani, Nital Patwa
  • Patent number: 5734844
    Abstract: Bidirectional handshake protocol circuitry is provided for asserting and deasserting a signal across a single line between a first device and a second device. Only the first device is permitted to assert the signal on the single line; and only the second device is permitted to deassert the signal on the single line. The protocol is particularly useful between a chipset and a CPU where the chipset asserts a System Management Interrupt (SMI) and the CPU deasserts the interrupt to signal to the chipset that the service routine is complete. After assertion (or deassertion), there is an overlap or hand-off period whereby the single line is driven in the same direction by both devices. After a predetermined number of clock cycles, the device which asserted or deasserted the signal is tristated to await deassertion or assertion, respectively.
    Type: Grant
    Filed: February 16, 1996
    Date of Patent: March 31, 1998
    Assignee: Cyrix Corporation
    Inventors: Claude Moughanni, Mark W. McDermott
  • Patent number: 5734881
    Abstract: A pipelined x86 processor includes a prefetch unit (prefetch buffer) and a branch unit that cooperate to detect when the target of a branch (designated a short branch) is already in the prefetch buffer, thereby avoiding issuing a prefetch request to retrieve the target. The branch unit includes a branch target cache (BTC) in which each entry stores, in addition to target address information for prefetching a prefetch block of instruction bytes containing a target instruction, a prefetch block location field--when this field is valid, it provides the location of the target instruction for a short branch within a prefetch block that is already in the prefetch buffer. In response to a branch that hits in the BTC, if the associated prefetch block location field is valid, the prefetch unit is able to begin transferring instruction bytes for the target instruction without issuing a prefetch request for the prefetch block containing the target instruction.
    Type: Grant
    Filed: December 15, 1995
    Date of Patent: March 31, 1998
    Assignee: Cyrix Corporation
    Inventors: Christopher E. White, Antone L. Fourcroy, Mark W. McDermott
  • Patent number: 5732253
    Abstract: A branch processing unit (BPU) is used, in an exemplary embodiment, in a superscalar, superpipelined microprocessor compatible with the x86 instruction set architecture. The BPU implements a branch prediction scheme using a target cache and a separate history cache. The target cache stores target addressing information and history information for predicted taken branches. The history cache stores history information only for predicted not-taken branches. The exemplary embodiment uses a two-bit prediction algorithm such that the target cache and the history cache need only story a single history bit (to differentiate between strong and weak states of respectively predicted taken and not-taken branches).
    Type: Grant
    Filed: February 26, 1996
    Date of Patent: March 24, 1998
    Assignee: Cyrix Corporation
    Inventor: Steven C. McMahan
  • Patent number: 5732243
    Abstract: A branch processing unit (BPU) is used, in an exemplary embodiment, in a superscalar, superpipelined microprocessor compatible with the x86 instruction set architecture. The BPU includes a target cache organized in banks to support split prefetching. Prefetch requests (addressing a prefetch block of 16 bytes) are separated into low and high block addresses (addressing split blocks of 8 bytes). The low and high block addresses differ in bit position ?3! designated a bank select bit, where the low block address of an associated prefetch request may be designated by a ?1 or 0! such that a split block associated with a low block address may be allocated into either bank of the target cache (i.e., the low block of a prefetch request can start on an 8 byte alignment rather than the 16 byte alignment).
    Type: Grant
    Filed: February 28, 1996
    Date of Patent: March 24, 1998
    Assignee: Cyrix Corporation
    Inventor: Steven C. McMahan
  • Patent number: 5724549
    Abstract: A method of data communication between asynchronous processes of a computer system is disclosed in connection with a cache coherency system for a processor-cache used in a multi-master computer system in which bus arbitration signals either are not available to the processor-cache, or are not exclusively relied on by the processor-cache to assure validity of the data in the cache (e.g., a 386-bus compatible computer system using an external secondary cache in which bus arbitration signals are only connected to and used by the secondary cache controller). In an exemplary external-chip implementation, the cache coherency system (120) comprises two PLAs--a FLUSH module (122) and a WAVESHAPING module (124). The FLUSH module (a) receives selected bus cycle definition and control signals from a microprocessor ((110), (b) detects FLUSH (cache invalidation) conditions, i.e., bus master synchronization events, and for each such FLUSH condition, (c) provides a FLUSH output signal.
    Type: Grant
    Filed: October 1, 1993
    Date of Patent: March 3, 1998
    Assignee: Cyrix Corporation
    Inventors: Thomas D. Selgas, Thomas B. Brightman, William C. Patton, Jr.
  • Patent number: 5706491
    Abstract: A branch processing unit (BPU) is used, in an exemplary embodiment, in a superscalar, superpipelined microprocessor compatible with the x86 instruction set architecture. The BPU includes a return stack for call/returns, including return stack pointer repair in the case of the failure of a call/return to confirm (decode) or resolve. Return stack control logic maintains a return stack pointer, incrementing and decrementing the return stack pointer respectively for call/return pairs that hit in the target cache--in addition, the return stack control logic maintains two additional stack pointers used for repair: (a) a confirmation pointer that is incremented when a call is decoded and decremented when a return is decoded; and (b) a resolution pointer that is incremented when a call resolves, and decremented when a return resolves.
    Type: Grant
    Filed: February 26, 1996
    Date of Patent: January 6, 1998
    Assignee: Cyrix Corporation
    Inventor: Steven C. McMahan
  • Patent number: 5701448
    Abstract: A pipelined 32 bit x86 processor including a prefetch unit and a branch unit. During sequential prefetching, the prefetch unit increments a prefetch physical address PFPA and a corresponding prefetch linear address PFLA--for each prefetch address, the PFLA is compared with the code segment limit linear address CSLA to determine if the corresponding prefetch block of 16 instruction bytes (cache line) contains the segment limit. If a COF hits in the branch unit, it outputs corresponding target address information used to generate a prefetch address--this target address information includes bits ?11:0! of the target address (which are the same for the target physical address), i.e., the branch unit does not provide a full PFLA for comparison with the CSLA.
    Type: Grant
    Filed: December 15, 1995
    Date of Patent: December 23, 1997
    Assignee: Cyrix Corporation
    Inventor: Christopher E. White
  • Patent number: 5692168
    Abstract: A prefetch unit includes flow control for controlling the transfer of instruction bytes from a prefetch buffer to a decoder where the prefetch buffer includes predicted change of flow instructions. Instruction bytes in the prefetch buffer are arranged in prefetch blocks--associated with each prefetch block is a flow control bit. When the transfer of instruction bytes from a current prefetch block is complete, the flow control bit is checked--if the flow control bit is set to indicate that the prefetch clock includes a predicted COF instruction, instruction bytes will not be transferred from the next prefetch block unless the predicted COF instruction is confirmed as having been decoded. This flow control avoids the complexity of maintaining information to repair the prefetcher and decoder if the predicted COF instruction is not decoded.
    Type: Grant
    Filed: February 27, 1996
    Date of Patent: November 25, 1997
    Assignee: Cyrix Corporation
    Inventor: Steven C. McMahan
  • Patent number: 5689721
    Abstract: A method of detecting anomalous overflow conditions is used, in an exemplary embodiment, in implementing in a 486-type microprocessor, nonrestoring two's complement division for negative quotients using 2n bit dividends and n bit divisors. Each interative division step, an adder/subtractor is used to add/subtract the properly aligned divisor to/from the left shifted dividend, to produce a partial remainder and a carry out bit Cout. Complement Cout is assumed to be the same as the most significant bit of the partial remainder PR(MSB), such that PR(MSB) is used as the sign bit in further computations, with complement Cout being used to control quotient generation according to DVRS XOR Cout. The anomalous overflow test signals overflow when complement Cout is the different than the most significant bit of the first partial remainder PR1(MSB), such that the anomalous overflow test is implemented according to the logic equation: Cout XNOR PR1(MSB).
    Type: Grant
    Filed: April 2, 1996
    Date of Patent: November 18, 1997
    Assignee: Cyrix Corporation
    Inventor: Robert D. Maher, III
  • Patent number: 5689454
    Abstract: Circuitry and methodology for pulse capture employs S-R latch, precharge, and switch circuitries for quickly sensing and capturing a logic pulse from dynamic logic circuitry. The present invention while having general application to any dynamic logic circuitry has particular application to random access memory (RAM), content addressable memory (CAM), and adder circuitries.
    Type: Grant
    Filed: January 11, 1996
    Date of Patent: November 18, 1997
    Assignee: Cyrix Corporation
    Inventor: Nital Patwa
  • Patent number: 5687202
    Abstract: A programmable phase shift clock generator is disclosed including a phase comparator, an up-down counter, a ring oscillator, and an adjustable delay line for determining a digital signature of an input clock and precisely generating a phase shifted clock signal.
    Type: Grant
    Filed: April 24, 1995
    Date of Patent: November 11, 1997
    Assignee: Cyrix Corporation
    Inventor: John K. Eitrheim
  • Patent number: 5675528
    Abstract: A system for the early detection of overflow or exceptional quotient/remainder pairs is used in conjunction with performing nonrestoring division using two's complement 2n bit dividends N and two's complement n bit divisors D--if early overflow is not signaled, and if an exceptional quotient/remainder pair is not detected, a quotient Q and remainder R are obtained by successive iterative partial remainder computations, which may be performed with no possibility of overflow. The detection system uses only the divisor, dividend, and first partial remainder. Early overflow detection uses three tests (FIGS. 2a, 2b, 2c): an exceptional divisor test, an exceptional dividend test, and an exceptional quotient test. Early exceptional quotient/remainder pair detection provides, when overflow is not signaled, exceptional quotient/remainder pairs using the exceptional divisor test for the exceptional divisor -2.sup.n-1 (FIG. 2c) and the exceptional quotient test for the exceptional quotient -2.sup.n-1 (FIG. 2b).
    Type: Grant
    Filed: June 16, 1995
    Date of Patent: October 7, 1997
    Assignee: Cyrix Corporation
    Inventor: David William Matula
  • Patent number: D390203
    Type: Grant
    Filed: October 15, 1996
    Date of Patent: February 3, 1998
    Assignee: Cyrix Coporation
    Inventors: Stephen M. Matson, Randy C. Willig