Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

A Method for Handling Double Branches in Zero Cycles

IP.com Disclosure Number: IPCOM000121153D
Original Publication Date: 1991-Jul-01
Included in the Prior Art Database: 2005-Apr-03
Document File: 1 page(s) / 62K

Publishing Venue

IBM

Related People

Barreh, JI: AUTHOR [+4]

Abstract

Disclosed is a method for handling double branches in zero cycles when both branches are not taken. If the second branch is taken and the first is not, both branches can be handled in a single cycle.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 56% of the total text.

A Method for Handling Double Branches in Zero Cycles

      Disclosed is a method for handling double branches in zero
cycles when both branches are not taken.  If the second branch is
taken and the first is not, both branches can be handled in a single
cycle.

      This discussion assumes the existence of a branch-processing
unit (bpu) that handles the target generation of branches and the
instruction control flow of a given machine.  The bpu may be
considered to be part of an instruction-dispatch unit (idu) that is
responsible for fetching and dispatching instructions to other
functional units that comprise the given machine.  Double branches
may be defined as any two branches encountered by the idu during its
current dispatch cycle.  The dispatching bandwidth of the idu and the
amount of prefetching employed influences the probability of the idu
encountering two branches in a given dispatch cycle.  The branch
method disclosed here seeks to handle double branches in either zero
or one cycle.

      In the branch method, the bpu is capable of generating the
target addresses of two different branches simultaneously.  The bpu
contains two separate address streams generated by two separate
adders.  The branch method enhances the branch processing of the idu
primarily in two ways:  1) handling of double branches available in
the current dispatch cycle, 2) increasing the prefetching of branches
outside of the current dispatch cycle.  Several cases exist in...