A microprocessor is provided with an instruction fetch mechanism that simultaneously predicts multiple control-flow instructions. The instruction fetch unit further is capable of handling multiple types of control-flow instructions. The instruction fetch unit uses predecode data and branch prediction data to select the next instruction fetch bundle address. If a branch misprediction is detected, a corrected branch target address is selected as the next fetch bundle address. If no branch misprediction occurs and the current fetch bundle includes a taken control-flow instruction, then the next fetch bundle address is selected based on the type of control-flow instruction detected. If the first taken control-flow instruction is a return instruction, a return address from the return address stack is selected as the next fetch bundle address. If the first taken control-flow instruction is an unconditional branch or predicted taken conditional branch, a predicted branch target address is selected as the next fetch bundle address. If no branch misprediction is detected and the current fetch bundle does not include a taking control-flow instruction, then a sequential address is selected as the next fetch bundle address.

Ein Mikroprozessor wird mit Instruktionsabruf Einheit versehen, die gleichzeitig voraussagt, daß mehrfach Anweisungen Steuerung-fließen. Instruktionsabruf Maßeinheit ist weiter fähig zur Behandlung der mehrfachen Arten von Steuerung-fließen Anweisungen. Instruktionsabruf Maßeinheit Gebrauch predecode Daten und die Niederlassung Vorhersagedaten zum Vorwählen folgende Instruktionsabruf Bündeladresse. Wenn ein Niederlassung misprediction ermittelt wird, wird eine behobene Niederlassung Zieladresse vorgewählt, während die folgenden Bündeladresse holen. Wenn kein Niederlassung misprediction auftritt und der Strom Bündel mit.einschließt genommen Steuerung-fließen Anweisung holen, dann holen die folgenden Bündeladresse wird vorgewählt gründeten auf der Art von Steuerung-fließen die ermittelte Anweisung. Wenn zuerst genommen Steuerung-fließen, ist Anweisung ein Rückkehrbefehl, eine Rücksprungadresse vom Rücksprungadresse Stapel wird vorgewählt, da die folgenden Bündeladresse holen. Wenn zuerst genommen Anweisung ist eine unbedingte Niederlassung Steuerung-fließen oder, vorausgesagte genommene bedingte Niederlassung, eine vorausgesagte Niederlassung Zieladresse wird vorgewählt, während die folgenden Bündeladresse holen. Wenn kein Niederlassung misprediction ermittelt wird und der Strom Bündel einschließt nicht ein Nehmen Steuerung-fließen Anweisung holen, dann wird eine aufeinanderfolgende Adresse vorgewählt, während die folgenden Bündeladresse holen.

 
Web www.patentalert.com

< (none)

< Highly available cluster virtual disk system

> Execution unit and method for using architectural and working register files to reduce operand bypasses

> (none)

~ 00002