Local stall control method and structure in a microprocessor

Electrical computers and digital processing systems: processing – Processing architecture – Long instruction word

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C712S219000

Reexamination Certificate

active

06279100

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to processors and computers. More specifically, the present invention relates to stall detection and control systems in a pipelined processor.
2. Description of the Related Art
Processors have long used pipelining to improve operating speed. A pipelined processor executes multiple instructions in parallel in an overlapped manner so that each stage of multiple stages in the pipeline completes a part of an instruction. Throughput of the pipeline relates to the number of instructions that can be processed in a given time interval.
Various conditions reduce the throughput of the pipeline by preventing a next instruction in an instruction stream from executing during a clock cycle. These conditions reduce the performance of the processor from the potential gains of pipelining. The conditions include structural conditions arising from resource conflicts in which functional units of the processor cannot support a combination of instructions in simultaneous overlapped execution. Data dependency conditions arise when an instruction depends on the results of an instruction which has not made the results available in the overlapping of instructions in the pipeline. Control conditions arise from pipelining of branches and other instructions that change the program counter of the processor.
The conditions occasionally necessitate stalling of the pipeline. A stall in a pipelined processor typically is handled by allowing some instructions to proceed while other instructions are delayed. The typical response when an instruction is stalled is to also stall all instructions that are subsequent to the stalled instruction in the pipeline. Instructions that are earlier in the pipeline are not stalled but no new instructions are fetched during the stall.
The handling of stalls includes two events, (2) the detection of the condition causing the stall, and (2) propagation of the stall signal throughout the processor. Both events create a critical timing path in modem fast processors. Stall logic circuits that detect stall conditions generally involves much circuitry, consuming a large amount of area on an integrated circuit die. The stall logic circuits receive signals from functional units located at several locations, often including distant locations, on an integrated circuit chip. The stall interconnections and circuitry therefore include long interconnection wires and extensive control logic, resulting in slow execution times of the processor.
The control logic typically attempts to stall the front end of the pipeline. In some processors, the control logic attempts to stall the entire pipeline. Since the various stages of the pipeline are associated with all aspects of instruction functionality, including instruction fetching, decoding, execution of an entire range of instructions, trapping, writeback, and the like, stall signals are routed across essentially the entire functional layout of the integrated circuit. Therefore, the stall signals are propagated along long wires having lengths over many millimeters. The stall signals are typically propagated the functionally long distances within a single clock cycle. Accordingly, the stall logic is often a critical timing path and cycle time limitation in high-performance processors.
A processor and operating technique are needed that improve execution performance of stall operations.
SUMMARY OF THE INVENTION
A processor implements a local stall functionality in which small, independent circuit units are stalled locally with the condition causing a stall being first detected locally, then propagated to other small independent circuit units. Stall conditions for a functional unit is detected locally with reduced logic circuitry and also without waiting to receive condition information from other functional units that is transmitted over long wires. Local stall logic circuits are distributed over diverse areas of an integrated circuit so that stall conditions are detected locally. A local stall is expanded into a global stall by propagation to logic circuits beyond a local region in subsequent cycles. Local detection of stall conditions and local stalling eliminates many critical paths in the processor.


REFERENCES:
patent: 5222240 (1993-06-01), Patel
patent: 5524263 (1996-06-01), Griffith
patent: 5537561 (1996-07-01), Nakajima
patent: 5657291 (1997-08-01), Podlesny et al.
patent: 5721868 (1998-02-01), Yung et al.
patent: 5761475 (1998-06-01), Yung et al.
patent: 5764943 (1998-07-01), Wechsler
patent: 5778248 (1998-07-01), Leung
patent: 5787303 (1998-07-01), Ishikawa
patent: 6055620 (2000-04-01), Paver
patent: 0 649 085 (1985-04-01), None
patent: 0 730 223 (1996-09-01), None
patent: WO 96/27833 (1996-09-01), None
Kazuaki Murakami et al: “SIMP (Single Instruction stream/Multiple instruction Pipelining): A Novel High-Speed Single-Processor Architecture” Computer Architecture News, US, Association for Computing Machinery, New York, vol. 17, No. 3, June 1, 1989, pp. 78-85, XP000035291 ISSN: 0163-5964.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Local stall control method and structure in a microprocessor does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Local stall control method and structure in a microprocessor, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Local stall control method and structure in a microprocessor will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2518300

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.