[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

AU2002227451A1 - Method and apparatus for reducing branch latency - Google Patents

Method and apparatus for reducing branch latency

Info

Publication number
AU2002227451A1
AU2002227451A1 AU2002227451A AU2745102A AU2002227451A1 AU 2002227451 A1 AU2002227451 A1 AU 2002227451A1 AU 2002227451 A AU2002227451 A AU 2002227451A AU 2745102 A AU2745102 A AU 2745102A AU 2002227451 A1 AU2002227451 A1 AU 2002227451A1
Authority
AU
Australia
Prior art keywords
reducing branch
branch latency
latency
reducing
branch
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
AU2002227451A
Inventor
John L. Redford
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ChipWrights Design Inc
Original Assignee
ChipWrights Design Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ChipWrights Design Inc filed Critical ChipWrights Design Inc
Publication of AU2002227451A1 publication Critical patent/AU2002227451A1/en
Abandoned legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3804Instruction prefetching for branches, e.g. hedging, branch folding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/323Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for indirect branch instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3842Speculative instruction execution
    • G06F9/3846Speculative instruction execution using static prediction, e.g. branch taken strategy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms
    • G06F9/4486Formation of subprogram jump address

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)
AU2002227451A 2000-11-10 2001-11-09 Method and apparatus for reducing branch latency Abandoned AU2002227451A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US71069900A 2000-11-10 2000-11-10
US09/710,699 2000-11-10
PCT/US2001/049653 WO2002039272A1 (en) 2000-11-10 2001-11-09 Method and apparatus for reducing branch latency

Publications (1)

Publication Number Publication Date
AU2002227451A1 true AU2002227451A1 (en) 2002-05-21

Family

ID=24855140

Family Applications (1)

Application Number Title Priority Date Filing Date
AU2002227451A Abandoned AU2002227451A1 (en) 2000-11-10 2001-11-09 Method and apparatus for reducing branch latency

Country Status (3)

Country Link
AU (1) AU2002227451A1 (en)
TW (1) TW559733B (en)
WO (1) WO2002039272A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6970985B2 (en) 2002-07-09 2005-11-29 Bluerisc Inc. Statically speculative memory accessing
US20050114850A1 (en) 2003-10-29 2005-05-26 Saurabh Chheda Energy-focused re-compilation of executables and hardware mechanisms based on compiler-architecture interaction and compiler-inserted control
US7996671B2 (en) 2003-11-17 2011-08-09 Bluerisc Inc. Security of program executables and microprocessors based on compiler-architecture interaction
US8607209B2 (en) 2004-02-04 2013-12-10 Bluerisc Inc. Energy-focused compiler-assisted branch prediction
US20080126766A1 (en) 2006-11-03 2008-05-29 Saurabh Chheda Securing microprocessors against information leakage and physical tampering

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3940450A1 (en) * 1989-12-07 1991-06-13 Voith Gmbh J M Squeegee device
EP0463973A3 (en) * 1990-06-29 1993-12-01 Digital Equipment Corp Branch prediction in high performance processor
DE69505717T2 (en) * 1994-03-08 1999-06-24 Digital Equipment Corp., Maynard, Mass. Method and apparatus for determining and making cross-routine subroutine calls
US5608886A (en) * 1994-08-31 1997-03-04 Exponential Technology, Inc. Block-based branch prediction using a target finder array storing target sub-addresses

Also Published As

Publication number Publication date
WO2002039272A1 (en) 2002-05-16
TW559733B (en) 2003-11-01
WO2002039272A9 (en) 2003-09-04

Similar Documents

Publication Publication Date Title
AU2001247753A1 (en) Method and apparatus for integrated-battery devices
AU2001229701A1 (en) Method and apparatus for content synchronization
AU2001263028A1 (en) Stream-cipher method and apparatus
AU2002214667A1 (en) System and method for rapid telepositioning
AU2001256933A1 (en) Apparatus and method
AU2002220135A1 (en) Location-determination method and apparatus
AU2001276971A1 (en) Apparatus and methods for clamping split bone sections
AU2001292563A1 (en) Multi-fastener surgical apparatus and method
AU2001264771A1 (en) Well reference apparatus and method
AU2002233938A1 (en) Method and apparatus for protein manipulation
AU2001288372A1 (en) System and method for tele-ophthalmology
AU2002213593A1 (en) Apparatus and method for introducing an implant
AU2001269414A1 (en) Method and apparatus for providing adaptive illumination
AU2001247949A1 (en) Method and apparatus for research management
AU2001262914A1 (en) Method and apparatus for electro-optic delay generation
AU2001264986A1 (en) Method and apparatus for facilitating relocation
AU2001262978A1 (en) Method and apparatus for interference reduction
AU2002360593A1 (en) Method and apparatus for nano-sensing
AU2001286249A1 (en) Method and apparatus for crystallization
AU2002219222A1 (en) Device and method for changing lines
AU2002234177A1 (en) Arbitration method and apparatus
AU2000242290A1 (en) Apparatus and method for surgical fastening
AU2001284583A1 (en) Method and apparatus for reducing distortion
AU2002227451A1 (en) Method and apparatus for reducing branch latency
AU2002227071A1 (en) Method and apparatus for processing variable length instructions