Browse Prior Art Database

Optimizing the Use of Branching History Table for Instruction Prefetching

IP.com Disclosure Number: IPCOM000075033D
Original Publication Date: 1971-Jul-01
Included in the Prior Art Database: 2005-Feb-24
Document File: 2 page(s) / 40K

Publishing Venue

IBM

Related People

King, A: AUTHOR [+2]

Abstract

The addition of two-byte boundary instruction address bits, 21 and 22, to the Branch instruction eight-byte boundary address of the Branch History Table BHT, allows optimizing the use of BHT when prefetching IBM System/360 type instructions on eight-byte boundaries.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 78% of the total text.

Page 1 of 2

Optimizing the Use of Branching History Table for Instruction Prefetching

The addition of two-byte boundary instruction address bits, 21 and 22, to the Branch instruction eight-byte boundary address of the Branch History Table BHT, allows optimizing the use of BHT when prefetching IBM System/360 type instructions on eight-byte boundaries.

An entry is made into BHT every time a successful branch instruction is executed. It contains the high-order address (bits 0 thru 13) plus the low-order two-byte boundary address (bits 21 and 22) of the last two successful branch instructions (IL and IR). Their corresponding target address or address of the next instruction in the branch direction (TL and TR, respectively) is also resident in BHT. Bits 14 through 20 of the Next Fetched eight-byte boundary Address NFA are used to select the two entries in the table. Bits 0 through 13 of IL and IR are compared against bits 0 through 13 of NFA. If they are equal, bits 21 and 22 of NFA, IL and IR must also be examined.

As shown in case A, if NFA was the target branch address IL, bits 21 and 22 of NFA must be equal to or less than bits 21 and 22 of IL for the Branch Target TL to be the next instruction address fetched. If NFA (21,22) IL>(21,22), the direction taken is sequential which is NFA + 8.

If NFA address was a sequential address (the previous NFA was the current NFA-8) only bits 0 through 13 of NFA are compared against IL and IR. If only one compare is equal, that correspondin...