Predecoding Of Instruction Component Patents (Class 712/213)
  • Patent number: 6018798
    Abstract: A floating point unit capable of executing multiple instructions in a single clock cycle using a central window and a register map is disclosed. The floating point unit comprises: a plurality of translation units, a future file, a central window, a plurality of functional units, a result queue, and a plurality of physical registers. The floating point unit receives speculative instructions, decodes them, and then stores them in the central window. Speculative top of stack values are generated for each instruction during decoding. Top of stack relative operands are computed to physical registers using a register map. Register stack exchange operations are performed during decoding. Instructions are then stored in the central window, which selects the oldest stored instructions to be issued to each functional pipeline and issues them. Conversion units convert the instruction's operands to an internal format, and normalization units detect and normalize any denormal operands.
    Type: Grant
    Filed: December 18, 1997
    Date of Patent: January 25, 2000
    Assignee: Advanced Micro Devices, Inc.
    Inventors: David B. Witt, Derrick R. Meyer
  • Patent number: 6006300
    Abstract: A multimedia terminal for processing multimedia signals having a host processor, latency, jitter insensitive and latency, jitter sensitive devices, and an isolation device between the latency and jitter insensitive devices and the latency and jitter sensitive devices operative to pass only low bandwidth signals is provided.
    Type: Grant
    Filed: August 1, 1997
    Date of Patent: December 21, 1999
    Assignee: International Business Machines Corporation
    Inventor: Roger P. Toutant
  • Patent number: 6006317
    Abstract: An apparatus for performing speculative stores is provided. The apparatus reads the original data from a cache line being updated by a speculative store, storing the original data in a restore buffer. The speculative store data is then stored into the affected cache line. Should the speculative store later be canceled, the original data may be read from the restore buffer and stored into the affected cache line. The cache line is thereby returned to a pre-store state. In one embodiment, the cache is configured into banks. The data read and restored comprises the data from one of the banks which comprise the affected cache line. Instead of forwarding store data to subsequent load memory accesses, the store is speculatively performed to the data cache and the loads may subsequently access the data cache. Dependency checking between loads and stores prior to the speculative performance of the store may stall the load memory access until the corresponding store memory access has been performed.
    Type: Grant
    Filed: October 28, 1998
    Date of Patent: December 21, 1999
    Assignee: Advanced Micro Devices, Inc.
    Inventors: H. S. Ramagopal, Rajiv M. Hattangadi
  • Patent number: 5974534
    Abstract: A computing system includes a main memory, an instruction cache and a processor. The processor includes memory interface means, predecoding means, interface means, a first arithmetic logic unit, a second arithmetic logic unit and steering means. The memory interface means is connected to the main memory and fetches instructions from the main memory. The predecoding means is connected to the memory interface means and predecodes the instructions to generate predecode bits. The predecode bits indicate whether and how the instructions may be bundled. The interface means is connected to the predecoding means and the instruction cache. The interface means stores the instructions and the predecode bits in the instruction cache and fetches the instructions from the instruction cache with the predecode bits. The steering means is connected to the interface means, the first arithmetic logic unit and the second arithmetic logic unit.
    Type: Grant
    Filed: February 14, 1994
    Date of Patent: October 26, 1999
    Assignee: Hewlett-Packard Company
    Inventors: Nazeemudeen Noordeen, Jason Zheng
  • Patent number: 5968163
    Abstract: An instruction scanning unit for a superscalar microprocessor is disclosed. The instruction scanning unit processes start, end, and functional byte information (or predecode data) associated with a plurality of contiguous instruction bytes. The processing of start byte information and end byte information is performed independently and in parallel, and the instruction scanning unit produces a plurality of scan values which identify valid instructions within the plurality of contiguous instruction bytes. Additionally, the instruction scanning unit is scaleable. Multiple instruction scanning units may be operated in parallel to process a larger plurality of contiguous instruction bytes. Furthermore, the instruction scanning unit detects error conditions in the predecode data in parallel with scanning to locate instructions. Moreover, in parallel with the error checking and scanning to locate instructions, MROM instructions are located for dispatch to an MROM unit.
    Type: Grant
    Filed: March 10, 1997
    Date of Patent: October 19, 1999
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Rammohan Narayan, Shane A. Southard, Thang M. Tran
  • Patent number: 5961632
    Abstract: A processor processes a plurality of instructions according to a disclosed method. First, the method receives (32) an instruction from the plurality of instructions. Second, the method determines (34) whether the received instruction is preceded by an instruction path leading code. Third, the method passes (36 or 38) the received instruction along at least one instruction path in a plurality of instruction paths. Fourth, in response to determining that the received instruction is preceded by an instruction path leading code, the method executes a machine word corresponding to the received instruction and selected from one of the plurality of instruction paths. Specifically, the selected instruction path is selected in response to the instruction path leading code.
    Type: Grant
    Filed: July 25, 1997
    Date of Patent: October 5, 1999
    Assignee: Texas Instruments Incorporated
    Inventors: Jonathan H. Shiell, Donald E. Steiss
  • Patent number: 5958042
    Abstract: A pipelined instruction dispatch or grouping circuit allows instruction dispatch decisions to be made over multiple processor cycles. In one embodiment, the grouping circuit performs resource allocation and data dependency checks on an instruction group, based on a state vector which includes representation of source and destination registers of instructions within said instruction group and corresponding state vectors for instruction groups of a number of preceding processor cycles.
    Type: Grant
    Filed: June 11, 1996
    Date of Patent: September 28, 1999
    Assignee: Sun Microsystems, Inc.
    Inventor: Marc Tremblay
  • Patent number: 5948096
    Abstract: A self-timed instruction marking circuit includes a prefix handling system for processing instruction bytes having prefix bytes. Length decoders receive instruction data bytes, and perform length decoding independently of the other length decoders in the instruction marking circuit. A length decoder determines whether a byte being processed is a prefix byte to an instruction. If a length-affecting prefix byte is found, the length decoder signals a subsequent length decoder to indicate that a prefix byte has been found. The subsequent length decoder uses the prefix signal to appropriately length decode the byte being processed by the subsequent length decoder. Signals are provided to continue the self-timed marking process. Prefix handling may also be used in a multiple marking unit configuration of an instruction marking circuit.
    Type: Grant
    Filed: December 23, 1997
    Date of Patent: September 7, 1999
    Assignee: Intel Corporation
    Inventors: Ran Ginosar, Rakefet Kol, Kenneth Scott Stevens, Peter A. Beerel, Kenneth Yi Yun, Christopher John Myers, Shai Rotem
  • Patent number: 5941980
    Abstract: A process is provided for determining the beginning and ending of each instruction of a variable length instruction. Data lines are stored in a first memory area which illustratively is an instruction cache. Each data line comprises a sequence of data words that are stored at sequential address in a main memory. The data lines contain multiple encoded variable length instructions that are contiguously stored in the main memory. Multiple indicators are stored in a second memory area, including one indicator associated with each data word of the data lines stored in the first memory area. Each indicator indicates whether or not its associated data word is the initial data word of a variable length instruction. A sequence of data words may be fetched from the cache. The fetched sequence of data words includes a starting data word and at least the number of data words in the longest permissible instruction. Plural indicators (i.e.
    Type: Grant
    Filed: February 27, 1997
    Date of Patent: August 24, 1999
    Assignee: Industrial Technology Research Institute
    Inventors: Shi-Sheng Shang, Dze-Chaung Wang
  • Patent number: 5935239
    Abstract: A mask decoder circuit is provided. The mask decoder circuit receives an input value indicative of one of a plurality of masks. The mask decoder circuit independently and in parallel processes portions of the input value to produce a submask (containing the portion of the output mask in which a transition from binary zeros to binary ones occurs) and to select either the submask, binary zeros, or binary ones for each of a plurality of regions within an output mask. The region receiving the submask is identified by the portion of the input value not processed to produce the submask. Other regions are filled with either binary zeros or binary ones according to the desired output mask.
    Type: Grant
    Filed: July 17, 1998
    Date of Patent: August 10, 1999
    Assignee: Advanced Micro Devices, Inc.
    Inventor: Rammohan Narayan
  • Patent number: 5931944
    Abstract: An instruction execution pipeline in a computer system having variable-length instructions uses branch prediction to perform self-timed marking of instructions prior to decoding. Branch handling logic is provided in an instruction marking circuit to directly mark a target instruction of a predicted branch as the next instruction to be decoded. Additionally, a branch target FIFO may be used to store information about the location of the target instruction in the instruction stream.
    Type: Grant
    Filed: December 23, 1997
    Date of Patent: August 3, 1999
    Assignee: Intel Corporation
    Inventors: Ran Ginosar, Rakefet Kol, Kenneth Scott Stevens, Peter A. Beerel, Kenneth Yi Yun, Christopher John Myers, Shai Rotem