A microprocessor capable of suppressing reduction in performance caused due
to a cache miss when a specific command is issued. The processor according
to the present invention comprises a command buffer/queue; an execution
unit; a subroutine call decoder; a data cache control unit; an Addiu
decoder for detecting an addiu command; a pre-fetch control section; an
adder; a PAdr register; a selector; and an adder circuit. When a
subroutine call occurs, a stack pointer is moved by an amount used in a
subroutine, and data used in the subroutine is pre-fetched to be stored in
an area used by the subroutine in a data cache. Therefore, it is possible
to reduce cache miss penalties due to stack access which is apt to be
generated at the time of a subroutine call.
Um microprocessador capaz de suprimir a redução no desempenho causou devido a uma falta de esconderijo quando um comando específico é emitido. O processador de acordo com a invenção atual compreende um comando buffer/queue; uma unidade da execução; um decodificador da chamada de sub-rotina; uma unidade de controle do esconderijo dos dados; um decodificador de Addiu para detectar um comando do addiu; uma seção de controle do pre-fetch; um adicionador; um registo de PAdr; um seletor; e um circuito do adicionador. Quando uma chamada de sub-rotina ocorre, um ponteiro de pilha está movido por uma quantidade usada em uma sub-rotina, e os dados usados na sub-rotina pre-são buscados para ser armazenados em uma área usada pela sub-rotina em um esconderijo dos dados. Conseqüentemente, é possível reduzir as penalidades da falta de esconderijo devido ao acesso da pilha que é apt ser gerado na altura de uma chamada de sub-rotina.