Ciências da computação dia 222
Arquitetura de computadores --- CISC e RISC
Core (núcleos dos processadores)
- No começo dos Pentium, a intel usava um truque de software para
simular como se houvessem mais núcleos (como as threads)
- depois do core 2 duo começaram a ser usados multicores reais
- processadores com muitos núcleos não necessariamente são melhores,
já que há a possibilidade de um core atrapalhar o outro
CISC
- complex instructions set computers
- ampla variedade de instruções
- executa muitas instruções complexas em sequência (tempo maior, mais
pulsos de clock)
- antiga, mas ainda usada
- executa muito bem as tarefas
- mais métodos de endereçamento(direto, indireto, relativo, etc.)
- maior flexibilidade para o dev
- maior complexidade para o hardware
- tamanhos de instrução são variados
- pode se criar microcódigo sequenciando múltiplas instruções em
linguagem de máquina, dando mais flexibilidade mais aumentando a
latência
- maior possibilidade de CACHE
- x86(intel, amd, 68k da motorola, etc.)
- ajuda na otimização de código
- é complexo de fazer
- difícil de dizer qual será o desempenho
- maior dificuldade para o compilador
CACHE
- l1,l2 e l3 dizem respeito à distância dos módulos de cache
- sendo assim o processador busca informações na seguinte ordem: L1,
L2, L3, RAM, HD
RISC
- reduced instructions set computers
- operações mais limitadas
- poucas instruções
- mais simples
- operações básicas e repetitivas
- poucos modos de endereçamento
- instruções de tamanho fixo dando resultados mais precisos
- simplifica o processo de compilação
- usa pipelines → quebra a instrução em instruções menores e executa
elas em paralelo
- muitos registradores de uso geral
- pode ter problemas durante a execução, uma vez que é mais rápida que
a CISC, e faz operações em paralelo ao invés de sequencial
- necessita de menos energia
- menor flexibilidade
- maior carga para os compiladores
- usado em ARM, MIPS, POWERPC, etc.