A method and apparatus for improving the performance of a superscalar,
superpipelined processor by identifying and processing instructions for
performing addressing operations is provided. The invention heuristically
determines instructions likely to perform addressing operations and
assigns those instructions to specialized pipes in a pipeline structure.
The invention can assign such instructions to both an execute pipe and a
load/store pipe to avoid the occurrence of "bubbles" in the event
execution of the instruction requires the calculation capability of the
execute pipe. The invention can also examine a sequence of instructions to
identify an instruction for performing a calculation where the result of
the calculation is used by a succeeding load or store instruction. In this
case, the invention controls the pipeline to assure the result of the
calculation is available for the succeeding load or store instruction even
if both instructions are being processed concurrently.
Um método e um instrumento para melhorar o desempenho de um superscalar, superpipelined o processador identificando e processar instruções para executar operações dirigindo-se é fornecido. A invenção heuristically determina instruções para executar provavelmente dirigir-se a operações e atribui aquelas instruções às tubulações especializadas em uma estrutura do encanamento. A invenção pode atribuir tais instruções a uma tubulação executar e uma tubulação de load/store para evitar a ocorrência de "bolhas" na execução do evento da instrução requer a potencialidade do cálculo da tubulação executar. A invenção pode também examinar uma seqüência de instruções para identificar uma instrução para executar um cálculo onde o resultado do cálculo seja usado por uma instrução sucedendo da carga ou da loja. Neste caso, a invenção controla o encanamento para assegurar o resultado do cálculo está disponível para a instrução sucedendo da carga ou da loja mesmo se ambas as instruções estão sendo processadas simultaneamente.