Arquitetura de microprocessadores - Módulo 4

luisfernandes229825 2 views 79 slides Oct 13, 2025
Slide 1
Slide 1 of 79
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53
Slide 54
54
Slide 55
55
Slide 56
56
Slide 57
57
Slide 58
58
Slide 59
59
Slide 60
60
Slide 61
61
Slide 62
62
Slide 63
63
Slide 64
64
Slide 65
65
Slide 66
66
Slide 67
67
Slide 68
68
Slide 69
69
Slide 70
70
Slide 71
71
Slide 72
72
Slide 73
73
Slide 74
74
Slide 75
75
Slide 76
76
Slide 77
77
Slide 78
78
Slide 79
79

About This Presentation

Arquitetura de computadores


Slide Content

Arquitetura de Microprocessadores Módulo 4

Introdução O microprocessador é o “cérebro” do computador. Muitas vezes designado por processador ou CPU (Unidade Central de Processamento). O desempenho do computador é baseado na sua capacidade de processamento .

Introdução A grande invenção tecnológica do século passado foi, sem dúvida, o transístor . O transístor é o principal componente existente no interior de um microprocessador . O microprocessador é composto por milhões de transístores .

Introdução O microprocessador tem a capacidade de efetuar milhões de operações por segundo. Grandes avanços tecnológicos nas áreas da matemática, medicina e engenharia devido aos desenvolvimentos dos microprocessadores .

Resumo histórico Tudo começou com o ábaco. Os primeiros registos da sua origem surgem , na China, por volta de 3000 a.C . Servia para ajudar nos cálculos da época. Não era programável , logo não se podia considerar um computador.

Resumo histórico Apenas em 1801 foi desenvolvida a primeira e verdadeira tecnologia de computação . O seu funcionamento tinha por base os cartões perfurados . Conforme os furos no cartão a máquina realizava diferentes ações. Desenvolvida para a automatização de teares têxteis por Joseph-Marie Jacquard .

Resumo histórico Até meados da Segunda Guerra Mundial os computadores foram baseados em cartões perfurados ou em interruptores eletromecânicos . Em 1943 aplicaram-se as válvulas de vácuo aos computadores permitindo substituir os interruptores, aumentando a velocidade de comutação .

Resumo histórico Com a invenção do transístor , iniciou-se a revolução dos computadores. Em 1952 construiu-se o primeiro computador à base de transístores , compostos à base de silício . IBM TX-0

Mark 1 Durante a Segunda Guerra Mundial os aliados, através da IBM , desenvolveram o computador, Mark 1 , que tinha como tecnologia , os relés eletromecânicos. Como eram utilizadas peças mecânicas , implicava a existência de componentes em movimento no interior do computador . Cada relé funciona como um interruptor que pode estar aberto ou fechado consoante a necessidade do programa.

Mark 1 O primeiro “bug” encontrado num computador foi precisamente no Mark 1 . O computador deixou de funcionar, até que se descobriu que uma traça impedia um relé de fazer contacto . Este computador tinha 17m de comprimento , 2,4 m de altura, 5 toneladas de peso , consumia muita energia e era sobretudo lento .

Colossus A primeira aplicação das válvulas de vácuo , que substituíram os relés eletromecânicos, surgiu num computador de nome Colossus . Este computador surgiu em 1943 , através de um projeto britânico bem-sucedido para decifrar mensagens secretas do inimigo em plena guerra . Esta era a sua única tarefa.

Eniac Com o ENIAC foi possível , pela primeira vez, realizar operações de diversas naturezas com a mesma máquina, porém em linguagem decimal. Constituído por aproximadamente 18000 válvulas que irradiavam muito calor , sendo necessária uma sala com ambiente controlado. A sua manutenção era muito complexa . As válvulas danificavam-se com muita frequência e era necessário verificar qual das 18000 válvulas teria fundido.

Eniac Podia ser programado para efetuar diversos tipos de cálculos. A ausência de dispositivos de memória levava a que fosse necessário reconfigurar manualmente as ligações com a unidade de controlo e o conteúdo dos acumuladores . Efetuar um cálculo diferente do anterior, poderia levar dias a configurar , mesmo tratando-se de uma simples operação.

Edvac Operava com base em linguagem binária e lia um programa residente em memória. Possuía a arquitetura de John Von Neuman .

Vantagens Transístores vs Válvulas Mais pequenos ; Libertam menos calor ; Não necessitam aquecer para trabalhar; Maior tempo de vida ; Operam a tensões mais baixas ; Custo de fabrico mais baixo ; Menor consumo de energia ;

Outras curiosidades As válvulas não deixaram de ser utilizadas. São aplicadas sobretudo na área da música , nos amplificadores de guitarra e baixo . A IBM , após o lançamento do primeiro computador à base de transístores (IBM TX-0), continuou a lançar sucessivos modelos para o mercado . O desenvolvimento na área dos semicondutores permitiu incluir vários componentes eletrónicos numa única pastilha de silício – o circuito integrado .

Evolução dos microprocessadores O primeiro microprocessador foi o Intel 4004 desenvolvido em 1971 com uma velocidade de relógio de 740kHz de 4 bits (4 bits de registos internos e 4 bits de barramento de dados). Contava com 2300 transístores (10µm cada) capaz de endereçar 640 Bytes de memória e com o mesmo poder de processamento do ENIAC. Foi aplicado a calculadoras e não a computadores, apesar de ser um chip com aplicabilidade em qualquer área.

Evolução dos microprocessadores O Intel 8080 (1974) foi o primeiro microprocessador a equipar um computador pessoal (Altair 8800). Apresentava uma velocidade de relógio de 2 MHz. Continha 6000 transístores(6 µm) e tinha um barramento de dados de 8 bit , endereçando até 64 KB de memória RAM.

Evolução dos microprocessadores Sucedeu-se o 8086 (1978) com novas instruções (X86) que ainda estão presentes nos processadores atuais Intel serie Core i e AMD Phenom II. Uma pequena alteração na arquitetura levou ao fabrico de uma nova unidade de nome Intel 8088 que permitia fabricar computadores mais económicos. A IBM integrou o Intel 8088 no seu primeiro computador pessoal , com o sistema operativo MS-DOS , a um preço acessível ao utilizador doméstico.

Evolução dos microprocessadores Desde então, a evolução dos microprocessadores centrou-se em quatro áreas principais: Aumento do número de transístores (miniaturização) Aumento da velocidade de relógio interno Aumento do número de bits com que os registos internos operam Aumento do número de núcleos que constituem um chip (invólucro)

Como se fabricam os microprocessadores? A base de um microprocessador é o silício . Material semicondutor que se pode comportar como um condutor ou isolador de corrente elétrica . Apresenta as mesmas funções que um interruptor ( aberto ou fechado ). O silício pode ser encontrado na areia .

Como se fabricam os microprocessadores? Como transformar areia num microprocessador? Primeiro a areia é purificada e derretida a altas temperaturas onde o formato líquido enche um molde cilíndrico à qual se dá o nome de ingots (espécie de lingote de ouro mas em silício). Depois são cortadas “fatias” deste cilindro às quais se dá o nome de Wafer .

Como se fabricam os microprocessadores? Cada Wafer irá albergar centenas de microprocessadores , cada um com milhões de transístores. Estes transístores são implementados em cada microprocessador baseando-se nas mais sofisticadas técnicas existentes. No final são interligados por finas pistas de cobre que tornam estes transístores (antes separados) num circuito integrado .

Como se fabricam os microprocessadores? Os milhões de transístores serão os responsáveis pela manipulação e armazenamento da informação , de forma a que o microprocessador seja capaz de executar as mais diversas operações. No final cada microprocessador é cortado do Wafer e implantado num invólucro(chip ) apresentando-se como um microprocessador tradicional.

Como se fabricam os microprocessadores? A evolução tão repentina dos processadores deveu-se à capacidade de miniaturização do processo de fabrico dos transístores. Os transístores que faziam parte do Intel 4004 tinham 10µm de tamanho . O primeiro Pentium já contava com transístores de 0,8 µm. Hoje em dia os core i são constituídos por transístores de 0,032µm ou seja 32 nanómetros. Um cabelo humano tem cerca de 100µm de espessura .

Arquitetura de Von Neumann Quando Von Neumann surgiu com a sua proposta para mudar a arquitetura dos computadores , ainda estes eram baseados em relés eletromecânicos ou válvulas de vácuo . Estes realizavam tarefas específicas , ficando aquém do esperado no que toca à resolução de problemas gerais.

Arquitetura de Von Neumann John Von Neumann , contribuiu significativamente para a criação do EDVAC e sobretudo para a mudança de um paradigma que impedia o desenvolvimento na área dos computadores . Pela primeira vez era apresentada uma arquitetura de um computador que continha um programa residente em memória em detrimento das ligações físicas usadas anteriormente.

Arquitetura de Von Neumann Isto foi o início de um abrir de portas à adaptação, desta nova geração de computadores, a qualquer situação/problema, bastando para isso, carregar em memória um novo conjunto de instruções que se pretendessem executar. A arquitetura de Von Neumann era também inovadora porque assentava em linguagem binária e pelo processamento ser realizado bit a bit (processamento em série) de forma a minimizar os recursos necessários.

Arquitetura de Von Neumann Claramente que de todas as características a mais marcante era mesmo a utilização de memória . A sua proposta era a seguinte: Dispositivos de entrada CPU Dispositivos de saída Memórias

Arquitetura de Microprocessadores Esta arquitetura apresentava os blocos que teriam as seguintes funções: ALU ou ULA - Unidade Lógica e Aritmética - realizar operações aritméticas (somas, subtrações, etc.) e operações lógicas (OR, AND, XOR, etc.) UC - Unidade de Controlo - controlar toda a máquina, inclusive a ALU. Tratar do endereçamento da memória, enviar dados para a ALU, coordenar todas as operações que esta deve realizar, etc.

Arquitetura de Microprocessadores Esta arquitetura apresentava os blocos que teriam as seguintes funções: Memória — armazenar as instruções para a realização de operações. Entrada e Saída (Input/Output) — uma interface de comunicação com o exterior. Receber ou enviar dados através de dispositivos de entrada e saída (I/O).

Arquitetura de Microprocessadores O primeiro computador a utilizar esta arquitetura foi como já referido, o EDVAC (1952) , baseado ainda em válvulas eletrónicas. Com o aparecimento dos transístores esta arquitetura tomou ainda maior relevo. Atualmente, a maior parte dos microprocessadores baseiam-se nela , apresentando apenas ligeiras diferenças.

CPU Um CPU (Central Processing Unit - Unidade Central de Processamento) muitas vezes chamada de processador ou microprocessador é o cérebro de um PC. Por essa razão, quando perguntamos a alguém que computador possui, a resposta começa sempre pelo tipo de processador (exemplo: Intel Core i7 970 3,2 GHz).

CPU Características: Velocidade de relógio - é a velocidade de processamento no interior do CPU . Largura dos canais de comunicação - forma como os diversos componentes do interior e exterior do CPU estão interligados.

CPU A velocidade de um processador (velocidade de relógio) é muito importante para o comportamento do computador em aplicações mais exigentes . A sua velocidade é medida em Hz , em homenagem a Heinrich Rudolf Hertz , fisico alemão, que pela primeira vez comprovou a existência de radiação eletromagnética . Hz ou ciclos por segundo ( ) é o inverso do período . f =  

CPU Assim 1 Hz = 1 ciclo/s e um CPU com velocidade de 100 Hz executa 100 ciclos por segundo, enquanto um processador de 3,2 GHz executa 3,2 biliões de ciclos por segundo. Imagine apenas como comparação uma roda de um automóvel que poderia executar 3,2 biliões de rotações completas em apenas um segundo! Para além da velocidade do processador , o seu desempenho está associado também à largura dos canais de comunicação , como já se referiu.

CPU Características: Registos internos - indicam o número de bits com que o CPU trabalha de cada vez (8, 16, 32, 64 bit); Barramento de Endereços ( Address Bus) - são linhas ou pistas de comunicação através das quais o CPU acede a posições da memória, ou dispositivos de Entrada/Saída (E/S), para onde se pretende enviar ou ler informação. Basicamente podem ser comparados à morada de nossa casa, porque são barramentos onde circulam endereços. Por exemplo, um carteiro só pode deixar uma carta em nossa casa se souber a morada.

CPU Barramento de Endereços ( Address Bus) - Neste barramento, apenas são passados endereços aos quais se pretende aceder (para ler ou escrever). É por essa razão que o barramento é unidirecional . No barramento de endereços respeitante ao acesso à memória, o número de linhas do barramento define a quantidade de memória que o CPU consegue endereçar .

CPU Barramento de Endereços ( Address Bus) Um microprocessador que apenas utiliza um BUS de 8 bit, só pode endereçar posições de memória. O microprocessador 8086 tinha um bus de endereços de 20 bit, logo podia endereçar até , isto é 1,048,576 bytes ou 1 MB de memória RAM. Se estiverem disponíveis no sistema 2 MB de memória o 8086 não os irá utilizar, uma vez que apenas consegue "ver" 1 MB no total. O Intel 486 com um barramento de endereços de 32 bit permite endereçar , ou seja 4 GB de memória.  

CPU Barramento de Endereços ( Address Bus)

CPU Barramento de dados (também designado de FSB - Front Side Bus) - Este é o barramento que interliga o CPU e a memória RAM. Canal físico (pistas) de comunicação de dados entre o interior e o exterior do CPU. O número de pistas determina a quantidade de informação que o CPU pode mover de cada vez de/para a memória. Por este barramento, circulam ainda dados referentes a dispositivos de E/S (placa gráfica, USB, etc.). Resumindo, o processador comunica com os componentes exteriores através dos barramentos (BUS).

Barramentos (BUS) Cada BUS tem um número de pistas associadas que mais não é do que a quantidade de bits que pode transportar em simultâneo (exemplo: 16 pistas permitem o transporte de 16 bit de cada vez). Quanto maior for o número de pistas mais informação o CPU consegue enviar/receber do/para o exterior.

Barramentos (BUS) Apesar de não estar diretamente associado ao desempenho do processador, o barramento de controlo é importante sobretudo para controlar as ações em curso. Barramento de controlo - barramento responsável por coordenar/sincronizar todo o fluxo de informação do sistema , como por exemplo, leitura e escrita na memória ou portas de E/S, atendimento de interrupções, etc. A forma como o processador interage com o exterior está representado (de forma simplificada) no esquema seguinte:

Barramentos (BUS) Apenas os barramentos de dados e controlo são bidirecionais. O barramento de endereços tem sempre o sentido CPU → Memória/E/S. Apenas o CPU, pesquisa por endereços na memória ou nos dispositivos de E/S. O contrário não faz qualquer sentido, daí ser unidirecional.

Barramentos (BUS) Os registos internos são pequenas memórias de um determinado tamanho (hoje em dia 32 bit ou 64 bit) que definem o conjunto de bits com que trabalha a CPU de cada vez (por ciclo de relógio). Por outras palavras, podemos dizer que através do tamanho dos registos é possível determinar a quantidade de informação com que o CPU consegue lidar internamente por ciclo de relógio.

Barramentos (BUS) Os processadores a 64 bit existentes hoje em dia, apenas tiram partido máximo da sua arquitetura se correrem num sistema operativo (SO) a 64 bit. Se dispusermos de um SO a 32 bit este processador irá trabalhar a "meio gás". Os registos internos do CPU são o tipo de memória mais rápida acessível ao processador. Estes são usados quando uma determinada informação é necessária novamente no decorrer de uma instrução.

Barramentos (BUS) Por exemplo, para obter o resultado de 4 x (2 + 3) o processador realiza primeiro a soma de 2 + 3 e em vez de guardar o resultado na memória RAM, fá-lo nos registos para que possa recorrer a esse valor mais rapidamente. Esta ligação é realizada através de um BUS interno (barramento interno) que interliga os diversos componentes existentes no interior de um CPU, mas que tem a particularidade de funcionar à velocidade interna do CPU.

Barramentos (BUS) Existem diversos tipos de registos internos, alguns dos quais associados apenas a certos componentes do CPU. O CPU é um circuito integrado (chip) que contém uma arquitetura própria para o seu funcionamento. Os números de transístores contidos no chip conferem-lhe a sua velocidade. Porém, a velocidade a que nos referimos é a velocidade de relógio interno (velocidade com que os dados são processados no interior do processador), sendo a velocidade com que os dados viajam pela motherboard assegurados pelo FSB (menor velocidade).

Barramentos (BUS) Devido aos processadores terem aumentado significativamente a sua velocidade de relógio interno não foi possível acompanhar esses ritmos nos barramentos exteriores ao CPU. Existem por isso, duas velocidades distintas num PC. Imaginemos um exemplo: Um processador Pentium 2,4 GHz tem uma velocidade interna de 2,4 GHz mas a motherboard funciona apenas a 266 MHZ, pelo que a velocidade de BUS é de 266 MHZ.

Barramentos (BUS) Desta forma, por cada ciclo da motherboard passam 9 ciclos de processador (9 x 266 MHz = 2,4 GHz). Como vimos anteriormente o BUS terá um certo número de pistas isto é, um certo número de bits a que opera. Para saber o número de bits que passam no BUS por segundo basta realizar o produto destes pela velocidade a que opera. Assim para um BUS que opere a 266 MHz e uma interface de 16 bit irá transferir por unidade de tempo: 266 x x 16 = 4256 Mb/s ou sabendo que 16 bit = 2 Byte temos: 266 x x 2 = 532 MB/s.  

Barramentos (BUS) Como se compreenderá a velocidade do barramento de dados é fundamental para que o processador possa movimentar mais rapidamente informação de/para interior/exterior. A barreira de 64 bit para este tipo de barramento trouxe problemas na sincronização e hoje são empregadas técnicas diferentes para a transferência da informação entre o CPU e o exterior.

Barramentos (BUS) Em vez de serem realizadas transferência baseadas no FSB , isto é, enviando dados em paralelo à velocidade imposta pelo barramento externo, os dados são enviados em série por barramentos dedicados que interligam os componentes ponto a ponto. Desta forma, é possível reduzir o número de bits e mesmo assim aumentar a quantidade de dados transferidos num determinado intervalo de tempo uma vez que estes passam a ser transferidos a velocidades muito mais altas , não dependendo mais da velocidade do barramento externo. Estas técnicas serão aprofundadas mais à frente ( Hypertransport e Quickpath Interconnect ).

Execução de um programa residente em memória Na arquitetura de von Neumann , de forma a minimizar os recursos envolvidos, as instruções e dados partilhavam a mesma memória e canais de comunicação (barramentos). Para que o CPU identificasse quais as posições de memória que continham instruções ou dados, era necessário que estas estivessem distribuídas de forma consecutiva .

Execução de um programa residente em memória Assim, o CPU sabe que a primeira leitura que fará da memória irá conter o código da instrução (exemplo: somar dois valores) e que a posição seguinte irá conter os operandos que foram indicados na instrução . Instrução Operando Instrução Operando Instrução … … Memória Ram Terminada a execução desta instrução sabe automaticamente que na próxima posição de memória encontrar-se-á a próxima instrução a executar .

Execução de um programa residente em memória Como se entenderá, esta "poupança" trouxe problemas sobretudo a nível de velocidade já que dados e instruções são encaminhados em série ( von . Neumann Bottleneck ). Existe contudo, uma arquitetura de nome Harvard que possui barramentos de dados e endereços distintos , bem como memória de programa e dados independentes .

Execução de um programa residente em memória Apesar de parecer uma alternativa melhor, os aperfeiçoamentos realizados sobre a arquitetura de von Neumann , fizeram com que esta última, seja ainda hoje a base dos nossos microprocessadores. No entanto, algumas características da arquitetura de Harvard foram aproveitadas para melhorar a arquitetura de von Neumann . Por exemplo, o microprocessador 80051 usa os mesmos barramentos para aceder à memória, mas este processador distingue que parte da memória é referente à memória de programa, e que parte é memória de dados.

Execução de um programa residente em memória Independentemente das modificações introduzidas, a execução de um programa segue um determinado conjunto de etapas: Busca ( fetch ) à unidade de memória da próxima instrução a ser executada. Descodificação da instrução a executar . Identificação dos operandos (caso existam) e qual o tipo de operação a realizar (exemplo: somar dois valores). Obtenção dos operandos (caso tenham sido especificados na instrução anterior) e carregamento destes nos registos internos do CPU (exemplo: valores a somar). Execução da tarefa .

Execução de um programa residente em memória Independentemente das modificações introduzidas, a execução de um programa segue um determinado conjunto de etapas: Armazenamento do resultado em memória ou em registos internos do CPU. Todo o processo anterior irá repetir-se para a próxima instrução . Todavia nem todos os programas necessitam de percorrer todos estes passos.

Arquitetura de um microprocessador Unidade de Descodificação - tem como função indicar qual o tipo de instrução (ler da memória, adicionar dois valores, etc.) à unidade de controlo numa linguagem que esta entenda (descodificada). PC - Program Counter (Registo de Programa) guarda o endereço da próxima instrução a ser lida da memória. Basicamente é um apontador de posições de memória. IR - Instruction Register (Registo de Instrução) contém uma cópia da instrução a ser executada no momento.

Arquitetura de um microprocessador SP - Stack Pointer (Apontador de pilha) tem como função guardar a informação de retorno à rotina que estava a ser executada antes de uma interrupção ter lugar. R0... Rn - Registers (Unidade de registos) memórias internas onde são armazenados temporariamente dados e resultados com que o CPU trabalha. Acumulador - registo associado à ALU que serve de buffer enquanto a outra entrada da ALU ainda não tem um valor carregado. Em alguns processadores serve também para guardar o resultado de cada operação.

Arquitetura de um microprocessador Flags (registos de estado) são responsáveis por guardar o estado resultante de cada operação realizada pela ALU. Registo Temporário - este registo é necessário para armazenar (servir de buffer) o resultado de uma operação realizada pela ALU enquanto o barramento de dados se encontra ocupado. Existem arquiteturas de microprocessadores que utilizam este registo na outra entrada da ALU prescindindo dele na saída.

Interrupções Por vezes o CPU interrompe o seu trabalho para atender outros pedidos . Para esse efeito, o CPU possui linhas de interrupção próprias que disponibiliza para atender interrupções provenientes de dispositivos exteriores (por exemplo, uma tecla premida). Para atender a interrupção, tem de saber onde interrompeu o trabalho anterior , para posteriormente poder retomar a execução do programa principal. Assim, só é possível o CPU conseguir este feito, se armazenar temporariamente a informação de que estava a tratar nesse momento em memória.

Interrupções É precisamente aqui que entra um registo especial de nome Stack Pointer (SP). Será esse registo o responsável por guardar a informação relativa às interrupções numa zona especial da memória denominada por Stack ( pilha ). A sua função passa por guardar a informação de retorno à rotina que estava a ser executada antes da interrupção ter lugar, ou seja, o valor do PC (e por vezes também valores dos registos internos). Desta forma, o PC fica livre para poder ser carregado com o endereço da rotina que gerou a interrupção.

Memória Cache Os processadores estão continuamente a aumentar a sua velocidade de relógio interno e os componentes externos deixaram muito cedo de acompanhar tal evolução . Assim, o acesso à RAM tomou-se lento demais , atrasando significativamente o trabalho do processador. Para esse efeito, desenvolveu-se uma solução baseada em buffers de nome cache.

Memória Cache Trata-se de uma memória de alta velocidade que permite guardar pequenas quantidades de dados , que terão maior probabilidade de vir a ser necessárias ao CPU . Assim, na arquitetura básica teríamos ainda de incluir a memória cache, que seria acedida antes de se procurar ( fetch ) a instrução na memória principal (RAM), através do que se denomina por unidade de prefetch . Pretende-se assim, conseguir evitar ao máximo o recurso à memória RAM que toma o processo mais lento.

Tipos de Memória Cache L1 - Cache de nível 1 (Level1) A cache L1 foi integrada num microprocessador pela primeira vez com o Intel 486DX. Todas as caches L1 possuem uma capacidade muito reduzida , pois o seu objetivo é serem rápidas . Esta encontra-se integrada no próprio CPU , pelo que consegue acompanhar a sua velocidade interna , não dependendo da velocidade do BUS , como acontece com o acesso à memória RAM.

Tipos de Memória Cache L1 - Cache de nível 1 (Level1) Todos os dias no intervalo das aulas recorre ao bar da escola para comer. Pede uma sandes de fiambre e um sumo de laranja natural. No primeiro dia o funcionário do bar não o conhece e leva cerca de 1 minuto a preparar o seu pedido. Ao fim de alguns dias, como pede sempre o mesmo, o funcionário já tem preparada a sua sandes e o sumo, uma vez que sabe que você irá aparecer por volta da mesma hora com esse pedido. Em vez de esperar 1 minuto terá imediatamente o seu pedido em cima do balcão. Esta é a forma de funcionamento de uma cache inteligente. Basicamente prevê o tipo de informação que o CPU irá necessitar .

Tipos de Memória Cache L1 - Cache de nível 1 (Level1) Normalmente 90% das vezes (cache it rate - taxa de sucesso) o CPU irá encontrar o que necessita na cache, aumentando assim, a performance do sistema. Claramente que se mudar de ideias e ao invés de pedir uma sandes de fiambre, pedir uma sandes de queijo voltará a ter de esperar 1 minuto pelo seu pedido.

Tipos de Memória Cache L2 - Cache de nível 2 (Level2) A cache L2 foi desenvolvida para os 10% de vezes que o processador não encontrava a informação pretendida na cache de nível 1 . Inicialmente estas caches eram externas, isto é, com o acesso dependente da velocidade do BUS.

Tipos de Memória Cache L2 - Cache de nível 2 (Level2) Atualmente este tipo de cache encontra-se integrado no próprio microprocessador , tal como a cache L1, funcionando as duas à mesma velocidade ( velocidade do relógio interno ), reduzindo ainda mais o tempo de pesquisa, pode determinada informação. Esta cache possui maior capacidade , uma vez que é menos vezes acedida. Garante igualmente que 90% das vezes, a informação procurada pelo CPU estará presente no seu conteúdo.

Tipos de Memória Cache L2 - Cache de nível 2 (Level2) Voltando à analogia do bar da escola, a cache L2 externa pode ser vista como a vitrina do bar. Ao pedir uma sandes de queijo, ao invés de uma sandes de fiambre, se esta já estivesse preparada na vitrina já não seria necessário o funcionário estar a prepará-la de propósito para si. Nesse caso, em vez de demorar 1 minuto demoraria apenas 15 segundos.

Tipos de Memória Cache L3 - Cache de nível 3 (Level3) A cache L3 está a ser cada vez mais utilizada principalmente devido às recentes arquiteturas de processadores que envolvem vários núcleos de processamento. Estes núcleos geralmente partilham a cache L3 que é a de maior capacidade de todas . Encontra-se igualmente integrada no microprocessador

Tipos de Memória Cache Como é possível verificar pela figura a cache de nível 3 é partilhada pelos núcleos de um CPU . Desta forma o CPU consegue encontrar, a maioria das vezes, o seu conteúdo na cache , não necessitando de aceder à memória RAM .

Processadores de vários núcleos Para evoluir na área dos processadores , ou se aumenta a velocidade do relógio interno , ou se implementam formas de processamento paralelo. Esta última tem sido a aposta principal tanto da Intel como da AMD, uma vez que o calor aumenta gradualmente com a velocidade interna do CPU. Tanto a Intel como a AMD surgiram com processadores de dois núcleos em 2005 (Pentium D e Athlon 64 X2).

Processadores de vários núcleos O processamento de vários núcleos é ideal para aplicações que promovam o multi-threading ou que corram diversas aplicações em simultâneo . Apenas nestas situações estes processadores se tornam realmente proveitosos. O número de núcleos tem vindo a aumentar e a série Xeon da Intel já tem à venda processadores de 28 núcleos físicos com tecnologia HT, que aos olhos do SO é visto como um processador de 56 núcleos. A AMD lançou também o AMD Rizen 3970X com 32 núcleos de processamento e 64 threads .

Tipos de microprocessadores Os processadores podem ser divididos em duas categorias: RISC Cl SC Os primeiros, Reduced Instruction Set Computer distinguem-se dos segundos, Complex Instruction Set Computer , por serem de natureza mais simples , o que os torna mais rápidos. O ideal seria todos os microprocessadores serem de tecnologia RISC, como aconteceu até ao aparecimento do primeiro Pentium.

Tipos de microprocessadores No entanto, devido à complexidade de algumas operações , este tipo de arquitetura não seria suficiente para as processar. Por outro lado, temos a arquitetura CISC que consegue efetuar todas as operações , mas que se torna mais lenta que a RISC a processar operações mais simples . Por estas razões, atualmente os processadores são híbridos , combinando as duas arquiteturas.

Hierarquia da memória As memórias podem variar em termos de tamanho , preço e velocidade .

Hierarquia da memória Como se pode verificar no esquema, a memória de acesso mais rápido , mais cara e com menor capacidade encontra-se no topo da pirâmide e é representada pelos registos internos do CPU. À medida que se vai descendo até à base da pirâmide, a velocidade de acesso diminui , bem como o preço , aumentando apenas a capacidade . Na base encontram-se as memórias secundárias (discos rígidos, DVD, CD, etc.).