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

Method and apparatus for unobtrusively monitoring processor states and characterizing bottlenecks in a pipelined processor executing grouped instructions

Patent 5594864 Issued on January 14, 1997. Estimated Expiration Date: Icon_subject May 30, 2015. 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

Data processing system with a pipelined structure for editing trace memory contents and tracing operations during system debugging
Patent #: 4879646
Issued on: 11/07/1989
Inventor: Iwasaki, et al.

High speed microcomputer in-circuit emulator Patent #: 5321828
Issued on: 06/14/1994
Inventor: Phillips, et al.

Inventor

Application

No. 454406 filed on 05/30/1995

US Classes:

714/39, Monitor recognizes sequence of events (e.g., protocol or logic state analyzer)712/227, Specialized instruction processing in support of testing, debugging, emulation714/30, Built-in hardware for diagnosing or testing within-system component (e.g., microprocessor test mode circuit, scan path)714/31, Additional processor for in-system fault locating (e.g., distributed diagnosis program)714/38Of computer software

Examiners

Primary: Treat, William M.

Attorney, Agent or Firm

International Classes

G06F 011/25
G06F 011/34

Abstract

Methods and apparatus are presented for unobtrusively monitoring processor states and characterizing bottlenecks in an arbitrary customer workload. An instruction queue and an instruction control unit within a pipelined central processor unit (CPU) provide for grouping and issuing multiple instructions per clock cycle for overlapped execution. Additionally, instruction and data caches in operation with integer and floating point function units issue a program counter to the instruction cache, which subsequently supplies instructions to integer and floating point instruction queues. Both integer and floating point unit datapaths comprise fetch, decode, execute, and writeback stages. In the preferred embodiment, ten additional datalines transmitting PIPE signals are routed from the integer and floating point function units to contact pins on an external pin gate array supporting the CPU. The ten PIPE signals provide information on activity of key internal states of the pipelined processor within a single clock cycle. The PIPE signals may be monitored by a logic analyzer, thereby forming an external hardware monitor. By tracing the ten PIPE signals, the number of instructions issued in each stall-free cycle and total number of cycles elapsed may be determined, permitting determination of bottlenecks in customer software on the target CPU, as well as yielding information for optimizing the CPU to execute customer software more efficiently. Based on the accumulated and tabulated performance data, a CPU vendor can reconfigure hardware and/or software to more precisely meet customer workload needs based on determination of customer software operating in the customers actual work environment.

Other References

  • William M. Johnson, Superscalar Microprocessor Design, Prentice-Hall, 1991, pp. 32-37 and 63-65
  • Lee et al., "Branch Prediction Strategies and Branch Target Buffer Design," Computer, Jan. 1984, pp. 6-22
  • "Motorola's 68332 Eliminates Glue Logic," Microprocessor Report, Jun. 1989, p. 10(3)
  • Stephen Magnus, "Payoff for IC, Analyzer Cooperation; Better Logic Analyzer Interfaces Are Showing Up Sooner for More Complex (Microprocessors)", EDN, Jun. 14, 1990, p. 1(4
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?