Alocador e Renomeamento de Registradores
O que o alocador faz:
- Reserva um dos 126 buffers de reordenamento (ROB) para a microinstrução atual de modo a monitorar o status de execução da microinstrução. Com isso, a microinstrução pode ser executada fora de ordem, já que o processador será capaz de colocá-las em ordem novamente através da utilização desta tabela.
- Reserva um dos 128 arquivos de registro (RF) de modo a armazenar lá o dado resultante do processamento da microinstrução.
- Se a microinstrução é do tipo carga ou armazenamento (load ou store), ou seja, se ela lê (load) ou grava (store) dados de/para a memória RAM, o alocador reservará um dos 48 buffers de carga ou um dos 24 buffers de armazenamento de acordo.
- Reserva uma entrada na fila de memória ou na fila geral, dependendo do tipo de microinstrução.
Após isso a microinstrução vai para o estágio de renomeamento de registradores. A arquitetura CISC x86 tem apenas oito registradores de 32 bits (EAX, EBX, ECX, EDX, EBP, ESI, EDI e ESP). Este número é pequeno, especialmente porque processadores modernos podem executar instruções fora de ordem, o que “mataria” o conteúdo de um dado registrador, travando o programa.
Por isso, nesta etapa o processador muda o nome e o conteúdo dos registradores usados pelo programa em um dos 128 registradores internos disponíveis, permitindo que a instrução seja executada ao mesmo tempo em que outra instrução que usa o mesmo registrador padrão (ou até mesmo fora de ordem), isto é, que uma segunda instrução seja executada antes da primeira mesmo que elas utilizem o mesmo registrador.
É interessante notar que o Pentium 4 tem na verdade 256 registradores internos, 128 registradores para instruções inteiras e 128 registradores para instruções de ponto flutuante e SSE.
O renomeador do Pentium 4 é capaz de processar três microinstruções por pulso de clock.
Do renomeador a microinstrução vai para a fila, de acordo com o seu tipo: fila de memória, para microinstruções relacionadas à memória, ou fila de inteiros/ponto flutuante, para todos os outros tipos de instruções.
Figura 4: Alocador e unidade de renomeamento de registradores.
Respostas recomendadas
Não há comentários para mostrar.
Crie uma conta ou entre para comentar
Você precisa ser um usuário para fazer um comentário
Criar uma conta
Crie uma nova conta em nossa comunidade. É fácil!
Crie uma nova contaEntrar
Já tem uma conta? Faça o login.
Entrar agora