Ferragens  
 
Rede de conhecimento computador >> Ferragens >> CPUs >> Content
Como o Cache Miss é tratado por hardware?
Quando ocorre uma falta de cache - significando os dados da CPU que não estão presentes no cache - o hardware inicia uma série de etapas para recuperar os dados do próximo nível da hierarquia de memória (normalmente a memória principal ou, em alguns casos, um armazenamento ainda mais lento, como uma unidade SSD ou dura). O processo é complexo, mas pode ser quebrado da seguinte maneira:

1. Detecção da falta: O controlador de cache detecta que os dados solicitados não estão presentes no cache. Isso geralmente é feito através de uma comparação do endereço solicitado com os endereços armazenados nas estruturas de índice e tags do cache.

2. Solicitação de encaminhamento: O controlador de cache envia uma solicitação para o próximo nível da hierarquia de memória (memória principal). Esta solicitação especifica o endereço de memória dos dados necessários.

3. Acesso à memória: A memória principal (ou outro armazenamento) recebe a solicitação e recupera o bloco de dados solicitado. Esta é a parte mais lenta do processo, pois o acesso à memória principal é significativamente mais lento do que acessar o cache. O tamanho do bloco de dados recuperado é determinado pelo tamanho da linha do cache (ou tamanho do bloco). Esta recuperação envolve a tradução do endereço (convertendo um endereço virtual em um endereço físico) se a memória virtual estiver sendo usada.

4. Transferência de dados: Depois que o bloco de dados é recuperado da memória principal, ele é transferido de volta para o cache. Essa transferência geralmente ocorre em um barramento dedicado (por exemplo, o barramento do sistema) otimizado para o movimento de dados de alta velocidade.

5. Posicionamento do cache: O bloco de dados recuperado é colocado no cache. A política de reposição de cache (por exemplo, LRU-menos usada recentemente, FIFO-primeiro a entrar em primeiro lugar) determina qual bloco existente no cache é substituído se o cache estiver cheio.

6. Acesso à CPU: Depois que os dados são carregados com sucesso no cache, a CPU pode acessá -los. A CPU esperará durante as etapas 3 e 4, o que faz com que a CPU pare e diminua drasticamente o desempenho.


diferentes tipos de erros e manuseio:

O manuseio de missões de cache pode ser ainda mais refinado, dependendo do * Tipo * de Miss:

* obrigatório (ou frio) Miss: Isso acontece quando um bloco de dados é acessado pela primeira vez. Não há como evitar essas erros, pois os dados simplesmente não estavam no cache anteriormente.

* Capacidade Miss: Isso ocorre quando o cache é pequeno demais para manter todos os dados que as necessidades da CPU. Estratégias de gerenciamento de cache mais sofisticadas (por exemplo, caches maiores, políticas de substituição aprimoradas) podem mitigar as perdas de capacidade.

* Conflito Miss: Isso ocorre quando vários blocos de dados são mapeados para o mesmo conjunto de cache (devido à maneira como os endereços são mapeados no cache), resultando em despejos repetidos. O uso de técnicas como cache associativa ou totalmente associativa pode reduzir as perdas de conflitos.

* Capacidade/interação de conflito: Esses dois podem se sobrepor, o que dificulta a análise.


Suporte de hardware para Miss Maniplel:

O hardware moderno emprega várias técnicas para otimizar o cache Miss Maniplel:

* Preparação: O hardware carrega proativamente os dados no cache que provavelmente será necessário em breve, reduzindo futuras falhas.

* caches de gravação: Em vez de escrever imediatamente os dados de volta para a memória principal em uma operação de gravação, os cache de back-back armazenam dados modificados no cache e o escrevem de volta à memória principal somente quando a linha de cache é despejada. Isso reduz o tráfego de memória.

* Cache de vários níveis: Muitos sistemas usam vários níveis de caches (L1, L2, L3, etc.), com caches mais rápidos, mas menores, mais próximos da CPU e caches mais lentos, mas maiores, mais longe. Essa estrutura hierárquica minimiza o impacto das erros de cache usando caches mais rápidos para dados frequentemente acessados.

* TLBS gerenciado por hardware (Buffers de Lokaside de Tradução): Página de cache do TLBS entradas para acelerar a tradução de endereços virtual-física, reduzindo a sobrecarga associada aos acessos à memória.


Em resumo, o manuseio de cache é um processo complexo que envolve coordenação de hardware entre a CPU, o controlador de cache e a memória principal. O manuseio eficiente das malhas de cache é crucial para o desempenho geral do sistema. Grande parte da melhoria no desempenho da CPU ao longo dos anos foi impulsionada por avanços na tecnologia de cache e nas estratégias de manuseio.

Anterior :

Próximo :
  Os artigos relacionados
·Quais são as propriedades desejáveis ​​para processad…
·Como monitorar a CPU Temperature & Fan 
·A CPU determina quanto PC RAM pode usar? 
·Qual é a visão e a missão da CPU? 
·Quantos bits no processador 80286? 
·Intel 5750 Especificações CPU 
·História processador CPU 
·Qual componente da CPU é responsável por interagir co…
·Qual unidade de CPU controla o computador de operação…
·Quantos CPU contém transistores? 
  Artigos em destaque
·Como fazer formas com um teclado 
·Você pode substituir seu disco rígido em um laptop HP…
·Como corrigir Código 41 em seu Mouse 
·O que é unidade fotocondutora em impressora a laser? 
·Como usar SCSI e outros periféricos USB em um Mac 
·O que é o processador de front -end? 
·Como desativar detecção de intrusão em um Dell Preci…
·Que tipos de revisões podem ser encontrados para a pla…
·Qual é a versão mais recente do Microsoft Network Mon…
·Como solucionar problemas de um Thinkpad T23 
Cop e direita © Rede de conhecimento computador https://ptcomputador.com Todos os Direitos Reservados