Browse Prior Art Database

Use of Branch History Table within a Three-Stream Machine

IP.com Disclosure Number: IPCOM000106824D
Original Publication Date: 1993-Dec-01
Included in the Prior Art Database: 2005-Mar-21
Document File: 2 page(s) / 60K

Publishing Venue

IBM

Related People

Ekanadham, K: AUTHOR [+3]

Abstract

In the Three-Stream Machine [*], a scanning processor separates the instructions within the instruction sequence into two groups. The first group includes branch instructions, some of the instructions that set the condition code on which these branches act, and some load instructions that need prioritization as they cause address generate interlock. The first group is scheduled for execution on the branch stream co-processor. The second group are the remaining instruction which in the main change the state of the machine by altering the values within the the general purpose registers, and memory locations.

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

Use of Branch History Table within a Three-Stream Machine

      In the Three-Stream Machine [*], a scanning processor separates
the instructions within the instruction sequence into two groups.
The first group includes branch instructions, some of the
instructions that set the condition code on which these branches act,
and some load instructions that need prioritization as they cause
address generate interlock.  The first group is scheduled for
execution on the branch stream co-processor.  The second group are
the remaining instruction which in the main change the state of the
machine by altering the values within the the general purpose
registers, and memory locations.

      The purpose of this separation is to allow the overlap of
instruction processing but also to resolve branches early enough so
that their actions do not incur delays to the processor.  If the
machine is effective in doing this, there is no need for a BHT
(branch history table).

BHT FOR THE THREE-STREAM MACHINE - There is a class of taken
branches, among all the taken branches, that due to the context of
their execution need to be anticipated by a BHT.  Within a Within a
Three-Stream Machine a delay associated with a taken branch
identifies such a taken branch and signals that branch as a member of
this class.  Only such branches can be recorded in a BHT.  The means
of recording a taken branch under such circumstances is standard.
The presence of a BHT predicted branch can be handled based on a
comparison between an I-FETCH address...