Cache de Memória e Unidade de Busca
O cache de memória L2 do Pentium 4 pode ser de 256 KB, 512 KB, 1 MB ou 2 MB, dependendo do modelo. O cache L1 de dados é de 8 KB ou 16 KB (nos modelos de 90 nm).
Como explicamos antes, o cache L1 de instruções foi movido de antes da unidade de busca para depois da unidade de decodificação, usando um novo nome, “Cache de código” (Trace Cache). Dessa forma, em vez de armazenar as instruções do programa a serem carregadas pela unidade de busca, o cache de código armazena microinstruções já decodificadas pela unidade de decodificação. O cache de código pode armazenar até 12 K microinstruções e, como no Pentium 4 cada microinstruções é de 100 bits, o cache de código é de 150 KB (12.288 x 100 / 8).
A ideia por trás desta arquitetura é muito interessante. No caso de um loop no programa (loop é pedaço de programa que é repetido mais de uma vez), as instruções a serem executadas já estarão decodificadas, já que elas são armazenadas já decodificadas no cache de código. Em outros processadores, as instruções precisam ser carregadas do cache L1 de instruções e decodificadas novamente, mesmo que elas já tenham sido decodificadas pouco tempo antes.
O cache de microinstruções tem também seu próprio buffer de destino de desvio (BTB, Branch Target Buffer) de 512 entradas. O BTB é uma pequena memória que lista todos os desvios identificados no programa.
Já na unidade de busca, seu BTB foi aumentado para 4.096 entradas. Nos processadores Intel de 6ª geração, como o Pentium III, este buffer era de 512 entradas e nos processadores Intel de 5ª geração, como os primeiros modelos de Pentium, este buffer era de apenas 256 entradas.
Na Figura 3 você pode ver um diagrama em blocos que demonstra o que estamos falando. TLB significa buffer de tradução de endereços virtuais (Translation Lookaside Buffer).
Figura 3: Unidades de busca e decodificação e o cache de código.
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