CPU - Significado CPU Central Processing Unit Unidade Central de Processamento
CPU - Função Na CPU são executadas as instruções Instrução: comando que define integralmente uma operação a ser executada Programa: instruções ordenadas logicamente
CPU - Composição A CPU é composta por várias v unidades: Unidade de Controlo Unidade Lógica L e Aritmética tica 4
CPU - Composição A CPU é composta por várias v unidades: Registos Unidade de Comunicação Interna 5
CPU - Composição Unidade de Controlo UC Determina a execução e interpretação dos dados que estão a ser processados num dado instante. 6
CPU - Composição Unidade Lógica L e Aritmética tica ULA Recebe os dados da memória para processar, quando uma instrução aritmética tica ou lógica l encontrada. é 7
CPU - Composição Registos Armazenam, temporariamente, os dados com que a ULA efectua as operações. 8
CPU - Composição Unidade de Comunicação Interna UCI Liga os diferentes componentes internos do microprocessador aos componentes externos. 9
CPU Sistema Operativo Conjunto de ferramentas necessárias para que um computador possa ser utilizado de forma adequada. Consiste numa camada entre o aplicativo e a camada física do hardware. 10
CPU Programação e linguagem Linguagem de MáquinaM Uma CPU só s pode compreender instruções que sejam expressas em Linguagem de Máquina. M Um programa escrito em linguagem máquina, m consiste numa série s de números n binários. 11
CPU - Programação e linguagem Linguagem de Baixo NívelN Linguagem de Alto NívelN Compiladores 12
CPU - Velocidade O processador mais rápido r neste mercado costuma ter entre 2 a 3 vezes o desempenho do processador mais lento e ser equivalente ao processador mais lento ao fim de 2 anos. 13
CPU - Velocidade O seu preço o costuma ser 10 vezes mais caro que o processador mais lento sendo uma das peças do computador que se desvaloriza mais rapidamente. 14
CPU - Velocidade Tirando jogos recentes, tratamento de vídeo, v bases de dados e aplicações complexas qualquer processador é capaz de desempenhar de forma igual a maior parte das tarefas de num computador pessoal. 15
CPU - Velocidade O processador é extremamente rápido r a executar instruções, sendo o problema principal, devido à sua velocidade, o fornecimento de dados e instruções suficientes para que não fique parado. 16
CPU - Velocidade No caso dos netbooks o processador é algo secundário sendo mais lento que os processadores habituais. Comparador do desempenho de processadores. 17
CPU - Velocidade Em cada processador há h milhões de transístores. stores. Além m do núcleo n do processador são usados para a memória "cache" e um sem fim de circuitos especiais feitos para melhorar o desempenho do processador em diversas tarefas (cálculos aritméticos ticos por exemplo). 18
CPU - Velocidade Abaixo indicam-se alguns processadores. Podemos verificar o aumento do número n de transístores stores ao longo da evolução dos processadores. 19
CPU - Velocidade Processador Velocidade Núcleos Transístores Core I7 965 3.2Ghz 4 731 milhões Core 2 Duo E6700 2.66Ghz 2 291 milhões Athlon-64 X2 5000+ 2.6Ghz 2 154 milhões Pentium D 960 3.6Ghz 2 376 milhões Athlon 64 4000+ 2.4Ghz 1 106 milhões Athlon 64 2800+ 1.8Ghz 1 68,5 milhões Pentium 4 520 2.8Ghz 1 125 milhões Atom 1.6Ghz 1 47 milhões 20
CPU - Famílias A Intel domina cerca de 80% do mercado dos processadores para computadores pessoais sendo a maior parte dos restantes 20% da AMD. 21
CPU - Famílias Os processadores mais divulgados são: Intel Core i7 - Processadores com quatro núcleos n com nova cache de nível n 3 com 8Mb. Cada core tem a sua própria pria memória de nível n 1 e de nível n 2. Intel Core 2 Quad - Consiste de em processadores Core 2 Duo juntos no mesmo processador. 22
CPU - Famílias Os processadores mais divulgados são: Intel Core 2 Duo - Processador com 2 núcleos n de processamento. AMD Phantom x4 - Processador Quad Core da AMD semelhante ao Core 2 Quad da Intel. 23
CPU - Famílias Os processadores mais divulgados são: AMD Athlon 64 x2 - Processador com 2 cores da AMD mais lento que os processadores Core 2 Duo. Atom - Processador dos PC's Magalhães que tem cerca de metade do desempenho de um processador dual core normal mas que consome pouca energia. 24
CPU - Núcleos Neste momento está-se se a passar para os processadores "dual core" e "quad" core. "dual core" um processador que tem no interior dois núcleos n de processamento. Isto permite que possam efectuar 2 tarefas diferentes em simultâneo. 25
CPU - Núcleos Os processadores "quad" core,, com quatro núcleos, são usados em especial em servidores ou para trabalho gráfico intenso. Existem "motherboards" que permitem ter mais que um processador. 26
CPU - Núcleos Numa família de CPU o desempenho evolui de forma linear com a velocidade do processador. Diferenças de arquitectura dos CPU leva a que CPU de menor velocidade possam ser mais rápidos. r 27
CPU - Núcleos Normalmente quando se trabalha num computador usam-se se vários v programas ao mesmo tempo pelo que os computadores com mais que um core apresentam uma melhor resposta. 28
CPU - Núcleos Nos portáteis teis um core 2 duo a 1.66Ghz equivale a um Centrino a 2.0Ghz, a um Turion 64 2.2GHz ou a um Pentium 4 a 3.4Ghz. Existem variações de processadores que se distinguem por um consumo de energia mais baixo. 29
CPU - Núcleos A título t tulo de exemplo refira-se que um iphone tem um processador que trabalha a 620Mhz. 30
CPU - Arrefecimento Nos processadores actuais a quantidade de energia dissipada chega a quase 150 watts o que é equivalente ao calor produzido por duas lâmpadas normais. 31
CPU - Arrefecimento Como o processador tem uma temperatura máxima de funcionamento isso obriga a que haja dissipadores e ventoinhas para arrefecer o sistema o que contribui para o baralho mas existem modelos de ventoinhas mais silenciosas. 32
CPU - Comparativo Intel AMD 33
CPU Como funciona? Apesar de cada processador ter o seu desenho interno, todos os processadores partilham o conceito básico. b Estudando a arquitectura do processador genérico, vemos as diferenças entre a Intel e da AMD. 34
CPU Como funciona? Como o processador processa as informações não depende do programa. O programa pode ser um processador de textos, uma folha de cálculo, c um filme, um programa de tratamento de imagem ou um jogo: Para o processador é igual, já que o processador não entende o que o programa está realmente a fazer. 35
CPU Como funciona? Ele apenas obedece às s ordens (chamadas comandos ou instruções) contidas no programa. Essas ordens podem ser para somar dois números n ou para enviar uma informação para a placa gráfica, por exemplo. 36
CPU Como funciona? Quando se clica duas vezes num ícone para executar um programa, o que acontece? 37
CPU Como funciona? O programa que está armazenado no disco e é transferido para a memória RAM. O programa é uma série s de instruções para o processador. 38
CPU Como funciona? O processador, usando um circuito chamado controlador de memória, carrega as informações do programa da memória RAM. As informações, agora dentro do processador, são processadas. 39
CPU Como funciona? O que acontece a seguir vai depender do programa. O processador pode continuar a carregar e executar o programa ou pode fazer alguma coisa com a informação processada, como mostrar algo no monitor. 40
CPU Como funciona? Anteriormente, o processador controlava a transferência de informações entre o disco rígido r e a memória RAM. Como o disco rígido r é mais lento que a memória RAM, deixava o sistema lento, já j que o processador ficava ocupado até que todas as informações fossem transferidas do disco rígido r para a memória RAM. Esse método, m chamado PIO (Programmed( Input/Output - Entrada/Saída Programada). 41
CPU Como funciona? Hoje em dia a transferência de informações entre o disco rígido e a memória RAM é feita sem o uso do processador, tornando, assim, o sistema mais rápido. r Esse método m é chamado Bus Mastering ou DMA (Direct( Memory Access - Acesso Directo à Memória). 42
CPU Como funciona? Processadores da AMD baseados nos soquetes 754, 939 e 940 (Athlon 64, Athlon 64 X2, Athlon 64 FX, Opteron e alguns modelos de Sempron) ) possuem controlador de memória embutido. Isso significa que esses processadores acedem à memória RAM directamente, ganhando velocidade. 43
CPU Como funciona? Velocidade Clock é um sinal usado para sincronizar componentes dentro do computador. Vendo a figura seguinte, mostra um típico sinal de clock: : Uma onda quadrada passando de 0 a 1 a uma frequência fixa. Na figura pode ver-se três ciclos de clock ( pulsos )) completos. 44
CPU Como funciona? Velocidade 45
CPU Como funciona? Velocidade O início de cada ciclo é quando o sinal de clock passa de 0 a 1,, marcado com a seta. O sinal de clock é medido em numa unidade chamada Hertz (Hz), que é o número n de ciclos de clock por segundo, ou seja, um clock de 3GHz significa que num segundo existem 3 mil milhões de ciclos de clock. 46
CPU Como funciona? Velocidade No computador, as medidas de tempo são em ciclos de clock.. Por exemplo, uma memória RAM com latência 5 significa que vai levar 5 ciclos de clock para começar a transferência de dados. No processador, todas as instruções precisam de um número n de ciclos de clock para serem executadas. Por exemplo, uma determinada instrução pode levar 7 ciclos de clock para ser completamente executada. 47
CPU Como funciona? Velocidade No processador, o interessante é ele saber quantos ciclos de clock demora cada instrução. Então se há h duas instruções para serem executadas e ele sabe que a primeira vai levar 7 ciclos de clock para ser executada, ele vai automaticamente começar a execução da próxima instrução no 8º 8 pulso de clock. 48
CPU Como funciona? Velocidade É claro que esta é uma explicação genérica para um processador com apenas uma unidade de execução. Os processadores modernos possuem várias v unidades de execução processando em paralelo e podem executar a segunda instrução ao mesmo tempo que a primeira, em paralelo. 49
CPU Como funciona? Velocidade Então há h uma relação entre clock e o desempenho? Pensar que clock e desempenho são a mesma coisa é o erro mais comum quando se fala de processadores. 50
CPU Como funciona? Velocidade Se compararmos dois processadores análogos, o que funcionar com uma taxa de clock mais alta será o mais rápido. r Neste caso, com uma taxa de clock mais alta, o tempo entre cada ciclo de clock será menor, então as tarefas serão desempenhadas em menos tempo e o desempenho será mais alto. 51
CPU Como funciona? Velocidade Mas quando se compara dois processadores diferentes, isso não é necessariamente verdadeiro. Comparando processadores de diferentes arquitecturas, por exemplo, de dois fabricantes diferentes, como Intel e AMD, o interior deles será completamente diferente. 52
CPU Como funciona? Velocidade Como dissemos, cada instrução demora um certo número n de ciclos de clock para ser executada. Se o processador A demora 7 ciclos de clock para executar uma instrução, e o processador B demora 5 ciclos de clock para executar essa mesma instrução, tendo eles a mesma frequência de clock,, o processador B será mais rápido, r porque pode processar essa instrução em menos tempo. 53
CPU Como funciona? Velocidade E há h ainda muito mais de desempenho de processadores, pois têm quantidades diferentes de unidades de execução, tamanhos de cache diferentes, formas diferentes de transferência de dados dentro do processador, formas diferentes de processar instruções dentro das unidades de execução, diferentes frequências de clock com o exterior, etc. 54
CPU Como funciona? Velocidade Com valores de clock muito elevados, surgiu um problema. A motherboard não podia funcionar com o mesmo clock.. No interior de uma motherboard, há h inúmeras pistas que ligam os vários circuitos do computador. Com frequências elevadas, as pistas começaram a funcionar como antenas, por isso o sinal, em vez de chegar à outra extremidade do fio, simplesmente desaparecia, sendo transmitido como onda de rádio. r 55
CPU Como funciona? Velocidade Os fabricantes de processadores começaram a usar, então, um novo conceito, chamado multiplicação de clock,, que começou ou com o processador 486DX2. Com esse esquema, que é usado em todos os processadores actualmente, o processador tem um clock externo, que é usado para dados transferidos com a memória RAM e um clock interno mais alto. 56
CPU Como funciona? Velocidade Para darmos um exemplo real, num Pentium 4 de 3,4GHz, estes 3,4GHz referem-se ao clock interno do processador, que é obtido quando multiplicamos por 17 o seu clock externo de 200 MHz. 57
CPU Como funciona? Velocidade Ou mais recentemente, num Athlon 64 de Quad 3GHz, estes 3GHz de cada núcleo n referem-se ao clock interno do processador, que é obtido quando multiplicamos por 15 o seu clock externo de 200 MHz. 58
CPU Como funciona? Velocidade A grande diferença a entre o clock interno e o clock externo em processadores modernos é uma grande barreira a ser transposta visando aumentar o desempenho do computador. Continuando com o exemplo do Athlon 64 Quad 3GHz, ele tem que reduzir sua velocidade 17 vezes quando tem de ler dados da memória RAM! Durante esse processo, ele funciona como se fosse um processador de 200MHz! 59
CPU Como funciona? Velocidade Há diversas técnicas t usadas para minimizar o impacto dessa diferença a de clock.. Uma delas é o uso de memória cache dentro do processador. Outra é transferir mais de um dado por pulso de clock.. Processadores tanto da AMD como da Intel usam esse recurso, mas enquanto os processadores da AMD transferem dois dados por ciclo de clock,, os da Intel transferem quatro dados por ciclo de clock. 60
CPU Como funciona? Velocidade 61
CPU Como funciona? Velocidade Assim, os processadores da AMD são apresentados como se tivessem o dobro de seus verdadeiros clocks externos. Por exemplo, um processador da AMD com clock externo de 200MHz é listado como tendo 400MHz. O mesmo acontece com processadores da Intel com clock externo de 200MHz, que são listados como se tivessem clock externo de 800MHz. 62
CPU Como funciona? Velocidade A técnica t de transferir dois dados por ciclo de clock é chamada DDR (Dual Data Rate), enquanto que a técnica t de transferir quatro dados por ciclo de clock é chamada QDR (Quad Data Rate). 63
CPU Como funciona? Arquitectura São muitas as diferenças entre as arquitecturas da AMD e da Intel. Entender o diagrama em blocos básico b de um processador moderno é o primeiro passo para entender como funcionam os processadores da Intel e da AMD e quais são as diferenças entre eles. 64
CPU Como funciona? Arquitectura O caminho dos dados entre a memória RAM e a CPU tem geralmente largura de 64 bits, funcionando à velocidade do clock da memória ou ao clock externo do processador, o que for mais baixo. 65
CPU Como funciona? Arquitectura O número n de bits e a frequência de clock podem ser combinados numa unidade chamada taxa de transferência, medida em MB/s. Para a calcular, é o produto do número n de bits pelo clock sobre 8. Para um sistema usando memórias DDR400 em configuração single channel (64 bits) a taxa de transferência da memória será de 3,2GB/s. 66
CPU Como funciona? Arquitectura Todos os circuitos dentro do processador funcionam no mesmo clock interno do processador. Dependendo do processador, algumas de suas partes internas podem até funcionar a uma taxa de clock mais alta. Além m disso, o caminho de dados entre as unidades do processador pode ser mais largo, transferindo mais bits por ciclo de clock do que 64. 67
CPU Como funciona? Arquitectura Por exemplo, a ligação entre a memória cache L2 e L1 em processadores modernos tem normalmente 256 bits. Quanto maior o número n de bits transferidos por ciclo de clock,, mais rápida a transferência será feita. A memória RAM e as memória cache têm diferentes frequências de clock e capacidades de transferência diferentes. 68
CPU Como funciona? Cache Memória cache é um tipo de memória de alto desempenho, também m chamada memória estática. tica. A memória RAM é dinâmica. A memória estática tica consome mais energia, é mais cara e é fisicamente maior que a memória dinâmica, mas é muito mais rápida r e pode trabalhar na mesma frequência do processador. 69
CPU Como funciona? Cache Ir ao exterior buscar dados faz o processador trabalhar a uma frequência inferior, logo é usada a memória cache. Quando o processador carrega um dado de uma certa posição da memória, um circuito chamado controlador de memória carrega na memória cache um bloco inteiro de dados debaixo da actual posição que o processador acabou de carregar. 70
CPU Como funciona? Cache Como normalmente os programas funcionam de maneira sequencial, a próxima posição de memória que o processador irá requisitar será provavelmente a posição imediatamente abaixo da posição da memória que ela acabou de carregar. Como o controlador de memória cache já j carregou dados abaixo da primeira posição de memória lida pelo processador, o próximo dado estará dentro da memória cache. 71
CPU Como funciona? Cache Assim, o processador não precisa de sair para procurar dados, já j que os mesmos estão carregados na memória cache embutida no processador, os quais ela pode aceder à sua taxa de clock interna, bastante superior à permitida nas memórias externas. 72
CPU Como funciona? Cache O controlador de memória cache observa as posições de memória, que são carregadas por dados de várias v posições de memória, depois da posição de memória que acaba de ser lida. Um exemplo real, se o processador carregou dados armazenados no endereço o 1.000, o controlador de cache carregará dados do endereço n após s o endereço o 1.000. 73
CPU Como funciona? Cache Esse número n n é chamado página, p se um dado processador está a trabalhar com páginas p de 4KB (valor típico), então carregará dados de 4.096 endereços abaixo da actual posição de memória que está a ser carregada (endereço 1.000 no nosso exemplo). A propósito, 1 KB é igual a 1.024 bytes, por isso 4KB é igual a 4.096 e não 4.000. Na Figura ilustra-se se esse exemplo. 74
CPU Como funciona? Cache 75
CPU Como funciona? Cache Quanto maior for a memória cache, maiores são as hipóteses da informação necessária ao processador estar no mesmo, então o processador precisará de aceder à memória RAM com menos frequência, ganhando assim o sistema desempenho (lembra-se que sempre que o processador acede à memória RAM, diminui a sua frequência de funcionamento) 76
CPU Como funciona? Cache Chama-se de acerto ( hit )) quando o processador carrega uma informação requisitada do cache, e de erro ( miss )) se a informação requisitada não está lá e o processador precisa de aceder à memória RAM do sistema. 77
CPU Como funciona? Cache L1 e L2 significam nível 1 1 (Level 1) e nível 2 2 ( Level 2 ), e referem-se à distância que distam do núcleo n do processador. Há três memórias cache distintas (cache de dados L1, cache de instrução L1 e L2). O cache de instrução L1 funciona como cache de entrada e o cache de dados L1 funciona como cache de saída da. 78
CPU Como funciona? Cache O cache de instrução L1 é geralmente menor que o cache L2, é particularmente eficiente quando o programa começa a a repetir uma pequena parte dele (loop( loop), porque as instruções requisitadas estarão mais próximas da unidade de busca. 79
CPU Como funciona? Cache Na página p de especificações de um processador o cache L1 pode ser encontrado com diferentes tipos de representação. Há fabricantes listam duas memórias cache L1 separadamente (Também m chamando o cache de instrução de I e o cache de dados de D ). 80
CPU Como funciona? Cache Outros fabricantes acrescentam a soma dos dois caches e escrevem separados,, logo 512KB, separados significa 256KB cache de instrução e 256KB de cache de dados, e alguns simplesmente somam os dois e temos de adivinhar qual o valor, dividindo a capacidade por dois para saber a capacidade de cada cache. 81
CPU Como funciona? Cache As grandezas tipo para valores de memória cache é de 4MB e 8MB, sendo que os processadores mais recentes poderão atingir valores de 16MB. 82
Fim 83