U.S. patents available from 1976 to present.
U.S. patent applications available from 2005 to present.

System for comounding instructions in a byte stream prior to fetching and identifying the instructions for execution

Patent 5448746 Issued on September 5, 1995. Estimated Expiration Date: Icon_subject January 25, 2014. Estimated Expiration Date is calculated based on simple USPTO term provisions. It does not account for terminal disclaimers, term adjustments, failure to pay maintenance fees, or other factors which might affect the term of a patent.

Patent References

Machine for multiple instruction execution
Patent #: 4295193
Issued on: 10/13/1981
Inventor: Pomerene

Instruction substitution mechanism in an instruction handling unit of a data processing system
Patent #: 4439828
Issued on: 03/27/1984
Inventor: Martin

(k)-Instructions-at-a-time pipelined processor for parallel execution of inherently sequential instructions
Patent #: 4594655
Issued on: 06/10/1986
Inventor: Hao ,   et al.

Control flow computer using mode and node driving registers for dynamically switching between parallel processing and emulation of von neuman processors
Patent #: 4780820
Issued on: 10/25/1988
Inventor: Sowa

Parallel processing method and apparatus for increasing processing throughout by parallel processing low level instructions having natural concurrencies
Patent #: 4847755
Issued on: 07/11/1989
Inventor: Morrison ,   et al.

Programmable unit having plural levels of subinstruction sets where a portion of the lower level is embedded in the code stream of the upper level of the subinstruction sets
Patent #: 4975837
Issued on: 12/04/1990
Inventor: Woodward, et al.

Method and apparatus for using extracted program flow information to prepare for execution multiple instruction streams
Patent #: 5050068
Issued on: 09/17/1991
Inventor: Dollas, et al.

Method and apparatus for merging
Patent #: 5086408
Issued on: 02/04/1992
Inventor: Sakata

Data sorting method
Patent #: 5121493
Issued on: 06/09/1992
Inventor: Ferguson

Computer architecture for the concurrent execution of sequential programs
Patent #: 5197137
Issued on: 03/23/1993
Inventor: Kumar, et al.

More ...

Inventors

Application

No. 186218 filed on 01/25/1994

US Classes:

712/210, Decoding instruction to accommodate variable length instruction or operand712/213, Predecoding of instruction component712/216DYNAMIC INSTRUCTION DEPENDENCY CHECKING, MONITORING OR CONFLICT RESOLUTION

Examiners

Primary: Bowler, Alyssa H.
Assistant: Shah, Alpesh M.

Attorney, Agent or Firm

International Class

G06F 009/38

Abstract

A system with an apparatus that can be used in the compounding of instructions for CISC architectures and architectures with other attributes, including RISC. The compounding is performed before instruction execution and it results in a compound instruction program that can be executed in a parallel fashion on appropriate instruction execution hardware. In particular, the proposed apparatus provides compounding capability for architectures that allow the intermingling of instructions and data, contain variable length instructions, and allow modifications of the instruction stream. The system provides for differing and partial reference point information. An embodiment of the proposed apparatus handles the worst-case situation when it is not known which text bytes are instructions and which are data. If some information is known, the system can be simplified. The apparatus as presented provides compounds capability for any number of instructions. The system is developed particularly for machines with a S/370 instruction set, for which a number of examples are given. A backward compounding apparatus is provided. Multiple compound units and logical ORing of sequences provides system support for more difficult organizations.

Other References

  • Acosta, R. D., et al., "an Instruction Issuing Approach to Enhancing Performance in Multiple Functional Unit Processors", IEEE Transactions on Computers, Fall, C-35 No. 9, Sep. 1986, pp. 815-828
  • Anderson, V. W., et al, The IBM System/360 Model 91: "Machine Philosophy and Instruction Handling", computer structures: Principles and Examples (Siewiorek, et al, ed (McGraw-Hill, 1982, pp. 276-292
  • Capozzi, A. J., et al, "Non-Sequential High-Performance Processing" IBM Technical Disclosure Bulletin, vol. 27, No. 5, Oct. 1984, pp. 2842-2844
  • Chan, S., et al, "Building Parallelism into the Instruction Pipeline", High Performance Systems, Dec., 1989, pp. 53-60
  • Murakami, K., et al, "SIMP (single Instruction Stream/Multiple Instruction Pipelining): A Novel High-Speed Single Processor Architecture", Proceedings of the Sixteenth Annual Symposium on Computer Architecture, 1989, pp. 78-85
  • Smith, J. E., "Dynamic Instructions Scheduling and the Astronautics ZS-1", IEEE Computer, Jul., 1989, pp. 21-35
  • Smith, M. D., et al, "Limits on Multiple Instruction Issue", ASPLOS III, 1989, pp. 290-302
  • Tomasulo, R. M., "An Efficient Algorithm for Exploiting Multiple Arithmetic Units", Computer Structures, Principles, and Examples (Siewiorek, et al ed), McGraw-Hill, 1982, pp. 293-302
  • Wulf, P. S., "The WM Computer Architecture", Computer Architecture News, vol. 16, No. 1, Mar. 1988, pp. 70-84
  • Jouppi, N. P., et al, "Available Instruction-Level Parallelism for Superscalar Pipelined Machines", ASPLOS III, 1989, pp. 272-282
  • Jouppi, N. P., "the Non-Uniform Distritubion of Instruction-Level and Machine Parallelism and its Effect on Performance", IEEE Transactions on Computers, vol. 38, No. 12, Dec., 1989, pp. 1645-1658
  • Ryan, D. E., "Entails 80960: An Architecture Optimized for Embedded Control", IEEE Microcomputers, vol. 8, No. 3, Jun., 1988, pp. 63-76
  • Colwell, R. P., et al, "A VLIW Architecture for a Trace Scheduling Compiler", IEEE Transactions on Computers, vol. 37, No. 8, Aug., 1988, pp. 967-979
  • Fisher, J. A., "The VLIW Machine: A Multi-Processor for Compiling Scientific Code", IEEE Computer, Jul., 1984, pp. 45-53
  • Berenbaum, A. D., "Introduction to the CRISP Instruction Set Architecture", Proceedings of Compcon, Spring, 1987, pp. 86-89
  • Bandyopadhyay, S., et al, "Compiling for the CRISP Microprocessor", Proceedings of Compcon, Spring, 1987, pp. 96-100
  • Hennessy, J., et al, "MIPS: A VSI Processor Architecture", Proceedings of the CMU Conference on VLSI Systems and Computations, 1981, pp. 337-346
  • Patterson, E. A., "Reduced Instruction Set Computers", Communications of the ACM, vol. 28, No. 1, Jan., 1985, pp. 8-21
  • Radin, G., "The 801 Mini-Computer", IBM Journal of Research and Development, vol. 27, No. 3, May. 1983, pp. 237-246
  • Ditzel, D. R., et al, "Branch Folding in the Crisp Microprocessor: Reducing Branch Delay to Zero", Proceedings of Compcon, Spring 1987, pp. 2-9
  • Hwu, W. W., et al, "Checkpoint Repair for High-Performance Out-of-Order Execution Machines", IEEE Transactions on Computers vol. C36, No. 12, Dec., 1987, pp. 1496-1594
  • Lee, J. K. F., et al, "Branch Prediction Strategies in Branch Target Buffer Design", IEEE computer, vol. 17, No. 1, Jan. 1984, pp. 6-22
  • Riseman, E. M., "the Inhibition of Potential Parallelism by Conditional Jumps", IEEE Transactions on Computers, Dec., 1972, pp. 1405-1411
  • Smith, J. E., "A Study of Branch Prediction Strategies", IEEE Proceedings of the Eight Annual Symposium on Computer Architecture, May 1981, pp. 135-148
  • Archibold, James, et al, Cache Coherence Protocols: "Evaluation Using a Multiprocessor Simulation Model", ACM Transactions on Computer Systems, vol. 4, No. 4, Nov. 1986, pp. 273-398
  • Baer, J. L., et al. "Multi-Level Cache Hierarchies: Organizations, Protocols, and Performance" Journal of Parallel and distributed Computing vol. 6, 1989, pp. 451-476
  • Smith, A. J., "Cache Memories", Computing Surveys, vol. 14, No. 3 Sep., 1982, pp. 473-530
  • Smith, J. E., et al, "a Study of Instruction Cache Organizations and Replacement Policies", IEEE Proceedings of the Tenth Annual International Symposium on Computer Architecture, Jun., 1983, pp. 132-137
  • Vassiliadis, S., et al, "Condition Code Predictory for Fixed-Arithmetic Units", International Journal of Electronics, vol. 66, No. 6, 1989, pp. 887-890
  • Tucker, S. G., "The IBM 3090 System: An Overview", IBM Systems Journal, vol. 25, No. 1, 1986, pp. 4-19
  • IBM Publication No. SA22-7200-0, Principles of Operation, IBM Enterprise Systems Architecture/370, 1988
  • The Architecture of Pipelined Computers, by Peter M. Kogge hemisphere Publishing Corporation, 1981
  • IBM Technical Disclosure Bulletin (vol. 33 No. 10A, Mar. 1991), by R. J. Eberhar
PatentsPlus Images
Enhanced PDF formats
loading...
PatentsPlus: add to cart
PatentsPlus: add to cartSearch-enhanced full patent PDF image
$9.95more info
PatentsPlus: add to cart
PatentsPlus: add to cartIntelligent turbocharged patent PDFs with marked up images
$18.95more info
 
Sign InRegister
Username  
Password   
forgot password?