Claims Analysis
Total Claims: 11
Claim 1
Independent Claim
108 words
In a branch history table which is divided into two sections, with groups of instructions being divided into segments and with the branch information for a segment forming a segment entry, the combination comprising: an active high speed section in which n, where n is an integer, segment entries are stored, including means for processing branch information in said segment entries; a slower speed backup section which stores the remaining segment entries of said branch history table; and means for updating the active high speed section from the slower speed section based on analyzing branch information in segment entries to determine entries to be used in the future.
Claim 2
Dependent Claim
108 words
In a branch history table which is divided into two sections, with groups of instructions being divided into segments and with the branch information for a segment forming a segment entry, the combination comprising: an active high speed section in which n, where n is an integer, segment entries are stored, including means for processing branch information in said segment entries; a slower speed backup section which stores the remaining segment entries of said branch history table; and means for updating the active high speed section from the slower speed section based on analyzing branch information in segment entries to determine entries to be used in the future.
Claim 3
Dependent Claim
85 words
The combination claimed in claim 1, wherein said means for updating comprises: analyzing means for determining exit address of each branch instruction in a given segment entry; and staging means responsive to the exit address determination of said analyzing means for examining the exit addresses of each segment in said active high speed section to determine which are target addresses of following segment entries in said slow speed section, including means for readying said following segment entries for fetching to said active high speed section.
Claim 4
Dependent Claim
159 words
In a branch history table which is divided into two sections, with said branch history table viewing memory as being divided into segments, wherein a segment is a continuous portion of memory, the combination comprising: a first active high speed section in which n, where n is an integer, segment entries are stored, including means for processing branch information in said n segment entries; a second slower speed section in which the remaining segment entries in said branch history table are stored; analyzer means coupled to said first active high speed section and said second slower speed section for determining an exit address of each branch instruction in a given segment; and stager means coupled to said first active high speed section and said second slower speed section and responsive to the exit address determination of said analyzer means for assuring the next n-1) segment crossing will be to segment entries stored in said first active high speed section.
Claim 5
Dependent Claim
159 words
In a branch history table which is divided into two sections, with said branch history table viewing memory as being divided into segments, wherein a segment is a continuous portion of memory, the combination comprising: a first active high speed section in which n, where n is an integer, segment entries are stored, including means for processing branch information in said n segment entries; a second slower speed section in which the remaining segment entries in said branch history table are stored; analyzer means coupled to said first active high speed section and said second slower speed section for determining an exit address of each branch instruction in a given segment; and stager means coupled to said first active high speed section and said second slower speed section and responsive to the exit address determination of said analyzer means for assuring the next n-1) segment crossing will be to segment entries stored in said first active high speed section.
Claim 6
Independent Claim
111 words
A method of processing branch instructions in a branch history table, wherein memory is viewed as being divided into segments, wherein a segment is defined as a continuous portion of memory which starts on a segment boundary, said method comprising the steps of: processing n, where n is an integer, segment entries in an active high speed section of said branch history table; storing the remaining segment entries in said branch history table in a slow speed section; and updating the active high speed section from the slow speed section based on analyzing the segment entries to determine if branch information contained in the segment entries are anticipated for future use.
Claim 7
Independent Claim
111 words
A method of processing branch instructions in a branch history table, wherein memory is viewed as being divided into segments, wherein a segment is defined as a continuous portion of memory which starts on a segment boundary, said method comprising the steps of: processing n, where n is an integer, segment entries in an active high speed section of said branch history table; storing the remaining segment entries in said branch history table in a slow speed section; and updating the active high speed section from the slow speed section based on analyzing the segment entries to determine if branch information contained in the segment entries are anticipated for future use.
Claim 8
Dependent Claim
58 words
The method of claim 4, wherein the step of updating includes the steps of: analyzing the segment entries to determine the exit address of each branch instruction contained therein; and staging segment entries presently stored in said slow speed section, for storage in said active high speed section based on the exit address determination during the analyzing step.
Claim 9
Independent Claim
142 words
A method of processing branch instructions in a branch history table, wherein memory is viewed as being divided into segments, wherein a segment is defined as a continuous portion of memory which starts on a segment boundary, said method comprising the steps of: processing n, where n is an integer, segment entries in a first active high speed section of said branch history table; storing the remaining segment entries in said branch history table in a slow speed section of said branch history table; analyzing each branch instruction in a segment entry by an analyzer to determine the exit addresses of the branch instructions; and responding to the determination of the exit addresses of the branch instructions in the respective segment entries by a stager, to assure the next (n-1) segment crossings will be to segment entries stored in said active area.
Claim 10
Independent Claim
142 words
A method of processing branch instructions in a branch history table, wherein memory is viewed as being divided into segments, wherein a segment is defined as a continuous portion of memory which starts on a segment boundary, said method comprising the steps of: processing n, where n is an integer, segment entries in a first active high speed section of said branch history table; storing the remaining segment entries in said branch history table in a slow speed section of said branch history table; analyzing each branch instruction in a segment entry by an analyzer to determine the exit addresses of the branch instructions; and responding to the determination of the exit addresses of the branch instructions in the respective segment entries by a stager, to assure the next (n-1) segment crossings will be to segment entries stored in said active area.
Claim 11
Dependent Claim
99 words
The method of claim 6, wherein said step of responding includes the steps of: maintaining in said stager a first list of segment entries presently stored in said active area and a second list of the next (n-1) segment crossings; comparing said first and second lists to determine if said (n-1) segment crossings are in one of the n segment entries presently stored in said first active high speed section; and fetching any segment entry that includes one of said (n-1) crossings and is not presently stored in said active high speed area, to said active high speed area.